You are on page 1of 39

INSTITUTO TECNOLGICO Y DE ESTUDIOS SUPERIORES DE MONTERREY

CAMPUS ESTADO DE MXICO

Proyecto de Laboratorio de Control Automtico Pndulo


de Furuta

Pedro Cmara Martnez

A01168139

Oscar Pelez Romero

A01167631

Omar Rodrigo Muoz Gmez

A01169881

Luis Hctor Snchez Albarrn

A01184343

Profesor: Emmanuel Garca Morn

Materia: Laboratorio de Control Automtico (MR3011)


Reporte Final
Mayo 06, 2015

Contenido
Introduccin ............................................................................................................................................... 2
Desarrollo ................................................................................................................................................. 10
Control por retroalimentacin del estado ............................................................................................... 33
Diseo del controlador ............................................................................................................................ 34
Simulacin del comportamiento en lazo cerrado .................................................................................... 36
Bibliografa ................................................................................................................................................... 39

Introduccin
Objetivos del proyecto
El pndulo de Furuta es un sistema no lineal e inestable, la ventaja de este sistema es que su
comportamiento se puede linealizar, lo cual lo hace ms sencillo de controlar. El pndulo de
Furuta o pndulo rotacional invertido consiste en una base donde se encuentra un motor que
controla el movimiento rotacional de una barra perpendicular a la base que contiene un
sensor que detecta la posicin del pndulo que est colocado en el extremo de la barra.
El objetivo del proyecto es lograr equilibrar el elemento subactuado del sistema, es decir
lograr que el movimiento rotacional del pndulo contrarreste el efecto de la gravedad y lo
regrese a un punto de equilibrio.
Existen diferentes formas de abordar el problema de lograr el control de la estabilidad del
pndulo de Furuta, todas ellas comienzan con la determinacin del comportamiento
dinmico es decir el modelo matemtico que describe al sistema, posteriormente se
implementa un control por retroalimentacin esttica de los estados cuyo objetivo es resolver
el problema de la regulacin a cero de las variables de estado.
Es por lo tanto indispensable conocer las variables de nuestro sistema, tratamos de lograr la
regulacin a cero de la posicin del pndulo mediante un voltaje (positivo o negativo) en las
terminales del motor, una explicacin detallada de las partes involucradas que permiten
modelar el comportamiento del sistema y la forma en que se logra el objetivo se puede
consultar en la seccin de diseo de control de este mismo documento.
Las componentes que integran al prototipo realizado son:

Sensores
El control del pndulo como se especifica ms adelante requiere de conocer las posiciones y
velocidades de los diferentes eslabones del sistema, es decir conocer en todo momento el
ngulo y velocidad del pndulo y del brazo que componen al sistema.
Para esto se opt por utilizar encoders incrementales debido a la gran resolucin que permiten
obtener de las variables del sistema.
Principio de funcionamiento
Para conocer la direccin y sentido de un movimiento rotacional, un encoder utiliza
principalmente dos seales conocidas como A y B. Es importante conocer el papel de las
salidas A y B de forma que se pueda determinar la posicin y aceleracin. Tanto el brazo
como el pndulo contaran con un encoder aunque como el brazo tendr el encoder integrado
en el motor.
Existen diferentes tipos de encoder, de entre los de tipo incremental o tambin conocidos
como de cuadratura existen diferentes posibles salidas que se conocen con los nombres de
A, B y Z. Un encoder incremental puede tener todas las siguientes posibles salidas:

A
A, B
A, B y Z

Internamente un encoder puede ser modelado como un interruptor, los encoders tienen un
nmero de incrementos o pasos determinados para cada giro completo de su estructura
(revolucin), por cada paso podemos considerar que internamente se cierra el interruptor.
Un encoder tiene por lo general sus salidas en estado ALTO y cuando el paso ocurre esta
pasa a el estado BAJO durante un instante y regresa a su estado ALTO tras concluido el paso.
Un encoder permite conocer el ngulo del eje/motor al que se encuentra acoplado tras sumar
por cada incremento una cantidad que corresponde a la resolucin del mismo. La velocidad
se puede determinar por software contando la frecuencia de los pulsos ocurridos. Un encoder
que solamente cuenta con la salida A es posible determinar la velocidad de giro siguiendo la
metodologa previamente descrita sin embargo es imposible saber la posicin puesto que un
giro a la izquierda o a la derecha produce la misma seal. Es por eso que la mayora de los
encoders vienen con las seales A y B; siendo que si podemos modelar el encoder como
interruptores que se cierran cuando se incrementa en un paso, es posible determinar el sentido
de giro del motor desfasando las seales A y B y viendo cual ocurre primero, con esto
podemos determinar el sentido de giro. La salida Z produce un pulso por cada revolucin
completa del sistema.

Ilustracin 1. Seales tpicas de un encoder de cuadratura.

El encoder utilizado para conocer la posicin del pndulo es el encoder modular incremental
AMT102 de CUI INC

Figura 2. Encoder AMT102


Dicho encoder cuenta con una resolucin ajustable desde los 48 ppr hasta los 2048 ppr siendo
as que la resolucin mxima que podemos alcanzar en grados con el sensor es de 0.1757
grados. El encoder utiliza tecnologa capacitiva para su funcionamiento y funciona de 3.6 a
5.5 Volts.
El encoder tiene 5 pines, 2 para la alimentacin (voltaje), y 3 seales de salida A, B y Z cuya
funcin se explicar a continuacin.
Las siguientes tablas tomadas de la hoja de datos nos permiten conocer sus especificaciones

Parmetro

Tabla 1. Caractersticas fsicas del encoder AMT102


Condicin/descripcin min
tpico
mx

unidad

Fuente de
poder
Consumo de
corriente
Salida en alto
Salida en
bajo
Salida de
corriente
Tiempo de
subida/bajada

Parmetro
Canal
Forma de
onda
Diferencia de
fase
Resolucin
en cuadratura

ndice
Precisin
Ciclo de
trabajo en
cuadratura

VDD

3.6

Salida sin carga

5.5

mA

VDD-0.8

CMOS sink/fuente por


canal

0.4

V
V

mA

30

Tabla 2. Caractersticas incrementales del encoder AMT102


Condicin/descrip min
tpico
mx
Cuadratura A, B e
ndice X
Onda de 5oltaje
cuadrada CMOS
Rotacin CCW de
90
AaB
48, 96, 100, 125,
192, 200, 250, 256,
385, 400, 500,
512, 800, 1000,
1024, 2048
Un pulso por 360
grados
0.25
256, 512, 1024,
49
50
51
2048
47
50
53
48, 96, 100, 125,
43
50
56
192, 200, 250, 384,
400, 500
800, 1000

ns

unidad

Grados
PPR

Grados
%
%
%

Actuadores
En cuanto al motor a utilizar se determin que ser el motor con encoder Pololu 37 D, que
es un motor con caja de engranes de 12 V corriente directa.

Ilustracin 2. Motor Pololu 37 D

Tabla 3. Caractersticas fsicas del motor

Tamao

37D x 64L mm

Peso

7.5 oz

Dimetro de la flecha

6 mm

Tabla 4. Caractersticas elctricas

Relacin de transmisin

19:1

Velocidad de funcionamiento libre @


6V

256 rpm

Corriente de funcionamiento libre @ 6V

250 mA

Corriente rotor bloqueado @ 6V

2500 mA

Torque rotor bloqueado @ 6V

42 oz in

Velocidad de funcionamiento libre @


12V

500 rpm

Corriente de funcionamiento libre @


12V

300 mA

Corriente rotor bloqueado @ 12V

5000 mA

Torque rotor bloqueado @ 12V

84 oz in

Una de las ventajas de utilizar este tipo de motores es que cuenta con un encoder integrado
por lo que ser relativamente sencillo lograr el ngulo que permita corregir la posicin del
pndulo mediante el control

Aunque anteriormente se definieron sus especificaciones elctricas y mecnicas es


importante conocer las conexiones necesarias para su funcionamiento.
Tabla 5. Cdigo de colores de los cables del motor

Color

Funcin

Rojo

Voltaje motor

Negro

Voltaje motor

Verde

Tierra encoder

Azul

Vcc encoder (3.5 20 V)

Amarillo

Salida A

Blanco

Salida B

El encoder integrado en este motor tiene una resolucin de 64 cuentas por revolucin de la
flecha del motor, sin embargo el motor tiene una caja de engranes con una relacin de 18.75:1
y corresponde a 1200 cuentas por revolucin de la salida de la caja de engranes. Su
funcionamiento es exactamente igual al encoder previamente descrito.
Microcontrolador
Las caractersticas y el modelo de nuestro microcontrolador es STM32F3DISCOVERY

Ilustracin 3. Microcontrolador STM32F3

La cual es una tarjeta de desarrollo de STM basada en ARM, cuyas caractersticas son

Microcontrolador STM32F303VCT6 de 256 KB Flash, RAM de 48 KB en un paquete


LQFP100
ST-LINK/V2 sobre la placa en el modo de seleccin puede ser usado individualmente
(con el conector SWD para programar y debuggear)
Fuente de alimentacin: A travs de USB o de una fuente externa de 3V o 5V.
Para aplicaciones externas ofrece una alimentacin de 3V y 5V
L3GD20, sensor de movimiento ST MEMS, giroscopio con salida en 3 ejes.
LSM303DLHC, sistema ST MEMS empaquetado que simula una aceleracin lineal en 3D
y un sensor magnetico digital en 3D .
10 LEDs:
o LD1 (rojo) para 3.3 V
o LD2 (rojo/verde) para comunicacin USB
o 8 LEDs de usuario, LD3/10 (rojo), LD4/9 (azul), LD5/8(naranja) y LD6/7 verde
Dos botones (usuario y reset)
USB de usuario con conector mini-B
Extensin header para todas las E/S LQFP100 para una rpida conexin sobre la placa.

Se opt utilizar este microcontrolador principalmente debido a que cuenta con un mdulo llamado
QEI (Quadrature Encoder Interface), el cual permite de forma muy sencilla hacer una interface con
8

los encoders utilizados. Adems de que cuenta con un reloj de 72 MHz que permite un
procesamiento veloz de los datos lo cual es importante para aplicar control digital.
Materiales utilizados

Varilla de aluminio inch


Rodamiento con dimtero interno de inch
Tornillo prisionero
Madera MDF
Perfil de aluminio

Informacin general de la HMI


Para el HMI se utilizaron algunas de las herramientas que ya existen para la tarjeta ST, la cual es
STMStudio. Este software permite al usuario visualizar las seales que la tarjeta est procesando
simultneamente.

Ilustracin 4. STMStudio

Esta interfaz permite al usuario modificar los valores deseados como lo es las dimensiones de las
grficas, a qu velocidad o periodo debe capturar informacin pero lo que consideramos ms
eficiente de esta herramienta es que, si se programa la tarjeta correctamente, se pueden cambiar
valores de variables declaradas en la tarjeta, es decir que si se habilitan los parmetros del control
para que sean modificables, estos pueden ser cambiados antes de que comience el programa a correr
sin tener que cambiar lneas de cdigo. En nuestro caso usamos esta herramienta para visualizar la
seal de posicin y velocidad del brazo del pndulo y del pndulo, estas se obtienen de los
encoders, el del pndulo y el del motor que va al brazo. De igual manera visualizamos la ley de
control y seales de prueba que usamos para verificar el modelo matemtico del prototipo. Como
9

ya se mencion, tambin tenemos la habilidad de cambiar ciertos parmetros sin cambiar lneas de
cdigo, es decir desde la interfaz.
Esta herramienta es relativamente fcil de usar una vez que se conoce todas las opciones con las
que cuenta. Este software es muy flexible y fcil de leer, una vez que comienza a correr, va
guardando la grfica de los valores que se van obteniendo, una vez que se detiene el programa, el
usuario puede revisar la grfica y consultar todos los valores obtenidos.
Su uso es muy sencillo, solo hace falta importar el archivo .axf producido al compilar el cdigo y
seleccionar las variables que se desea visualizar como se puede apreciar en la siguiente ventana.

Ilustracin 5. Variables a importar

En la anterior ventana se muestran todas las variables globales del cdigo elaborado y
seleccionamos nicamente aquellas de inters.

Desarrollo
Diseo mecnico
Para el diseo del prototipo se opt por una forma geomtrica que permitiera realizar los clculos
del modelo matemtico de forma sencilla, el modelo final se muestra en la figura.

10

Ilustracin 6. Vista del modelo final

Las diferentes partes que constituyen al prototipo construido son:


Base:

Ilustracin 7. Base del proyecto.

Para la maquinacin de esta pieza se utiliz una sierra cinta vertical por la cual introducimos la
madera y realizamos el corte en forma hexagonal, este corte es importante para que el pndulo
pueda moverse libremente en su posicin no invertida.

11

Soportes:

Ilustracin 8. Soportes del pndulo

Los soportes no requirieron mucha manufactura, fueron comprados en una cancelera cortados a la
medida de 30 cm y posteriormente se utiliz un taladro para barrenar los extremos para permitir
realizar un diseo modular unido por tornillos.
Chumacera:

12

Ilustracin 9. Chumacera

Esta pieza fue elaborada mediante una sierra cinta para metal, mediante la cual se cort el metal a
la medida de un cuadrado de 7 x 7 cm, al cual se le hicieron 2 agujeros utilizando la fresadora para
poder colocar el balero, uno para el eje del motor por debajo de la pieza y uno para sujetar el eje
del motor y colocar el prisionero. Para la colocacin del tornillo prisionero es necesario dar cuerda
a la pieza, para esto se emplea un maneral y un machuelo con la medida del tornillo.
Soporte motor:

Ilustracin 10. Base que soporta al motor

El soporte del motor es de madera y fue cortado nuevamente con la sierra cinta vertical y se le
taladr un agujero al centro para colocar el motor.
13

Pndulo:

Ilustracin 11. Varilla de aluminio (pndulo)

El pndulo consiste de una varilla de aluminio que mediante una dobladora se realiz el ngulo de
90 justo a la mitad para que finalmente cada lado fuera de 40 cm.
Diseo electrnico
Un circuito de transistores Push-Pull es aquel que tiene la capacidad de controlar tanto la velocidad
como el sentido de giro de un motor de corriente directa, a partir de una sola seal de control. Esta
seal de control puede ser analgica o digital. Si la seal es analgica, se podr controlar tanto el
sentido de giro como su velocidad. Si la seal es digital, el sistema que proporciona la seal de
control debe ser capaz de mandar valores negativos, o de lo contrario el motor girar en un solo
sentido. Se puede utilizar el mtodo de modulacin de ancho de pulso (PWM), para controlar la
velocidad del motor, con una seal digital.
Dependiendo del tamao del motor, es la cantidad de corriente elctrica que ste demandar a la
etapa de potencia, y por ende a su fuente de alimentacin. Es por esto que se debe seleccionar
cuidadosamente qu tipo de transistores vamos a utilizar para armar el circuito. En nuestro caso,
utilizaremos transistores con encapsulado TO-220. Especficamente, se utilizarn los transistores
TIP32 y TIP31. Esto es porque ambos tipos de dispositivo toleran una corriente de colector de 3
de corriente directa, y tienen un consumo mximo de potencia de 40W. Dependiendo de la letra
(A, B o C), que venga en el nombre, es el voltaje al que pueden ser sometidos. Debido a la
existencia de estos componentes en la tienda de electrnica, se consiguieron los transistores
TIP31A, y TIP32C. Dado esto, el voltaje mximo al que puede ser sometido el de 60V de DC.
14

Ilustracin 12. Trasistor TIP31

Una buena prctica es aislar las corrientes que circulan por la etapa de potencia y la etapa de
control, principalmente porque los voltajes que ambos sistemas utilizan pueden variar
dependiendo de la implementacin. Existen muchos mtodos por los cuales podemos aislar las
corrientes de los sistemas. Uno de ellos es colocar un amplificador operacional, en su
configuracin de seguidor. Este circuito integrado deber estar conectado entre el sistema de
adecuacin de la seal de control y la etapa de potencia. Para este punto, se utilizar el integrado
TL081CN. Este dispositivo es ventajoso, ya que nos provee una seal ms fidedigna que un
amplificador LM741, puede tener una alimentacin de 18V de DC, y maneja seales de corriente
entre 2 y 60 mA.

Ilustracin 13. Integrado de un amplificador operacional

Parte 1. Seal de control.


Existen muchas maneras con las cuales obtener la seal de control. Sin embargo, se debe escoger
la ms adecuada, dependiendo de la aplicacin en la que estemos trabajando para determinar qu
acondicionamiento se utilizar. Una de estas tcnicas es el realizar un divisor de voltaje variable
con un potencimetro de precisin (preset), conectando una resistencia, por ejemplo de 1k, a los
dos pines de extremo del preset, y el cursor de este nos dar la seal de control. Es importante
mencionar que las resistencias debern estar conectadas: una a voltaje positivo y otra a voltaje
negativo, tal y como se ilustra en la siguiente figura:

15

Ilustracin 14. Divisor de voltaje

La otra manera ms prctica de controlar esta interface de potencia, es conectarla directamente de


la seal de salida de cualquier controlador tipo PID, generado con OpAmps, por ejemplo. La nica
restriccin que tiene este acoplamiento es asegurar que el controlador PID tenga un umbral de
voltaje de idntico al que el motor puede trabajar. Es decir, si el motor tiene una tolerancia mxima
a 15V entre sus terminales, la seal del controlador puede slo puede trabajar en un rango de entre
-15V a 15V.

Ilustracin 15. Conexin de seal de control a salida del controlador

Parte 2. Interconexin de la etapa de potencia.


El dispositivo que conecta el sistema de control con la etapa de potencia es un amplificador
operacional, en su configuracin de seguidor. La retroalimentacin del seguidor es negativa, y
proviene de la terminal del motor que estar conectada a los emisores de los transistores. Esto es
importante de respetar, ya que el seguidor demandar al sistema de transistores que mantengan el
mismo voltaje en el motor que el que se manda desde la seal de control. La entrada positiva del
amplificador ser la entrada positiva.
Como se mencion antes, la etapa de potencia consiste en 2 transistores de unin bipolar (BJT) de
potencia. Estos dos transistores se encuentran en un encapsulado tipo TO-220. El dispositivo
TIP31A es un transistor tipo NPN, mientras que el dispositivo TIP32C es un transistor tipo PNP.
Las letras A, B y C de ambos transistores solamente indican la tolerancia mxima al voltaje entre
colector y base, y entre colector y emisor. Es decir, si el transistor tiene una letra A, su voltaje
mximo es de 60V, una letra B indica tolerancia a 80V, y la letra C indica una tolerancia a 100V.
Estos valores son de corriente directa. Como fsicamente tenemos un transistor con terminacin
16

A, el voltaje mximo que podremos poner entre el colector y el emisor es de 60V. Esto ser de
utilidad para los motores medianos. Ambos transistores permiten un flujo de 3A en su colector.
Por lo que debemos evitar conectar motores que demanden ms de esta corriente para manejarlos.
En esta configuracin, los transistores estn anodados en sus emisores. Es decir, la configuracin
es de emisor comn. Esto es debido a que el motor ser conectado en este nodo. As mismo, las
bases de ambos transistores estn conectadas en el mismo nodo. Esto es porque son las bases las
partes de los transistores que sirven para poder dispararlos. Una resistencia de base ser necesaria
para poder limitar la corriente, ya que cuando un transistor entre en saturacin, existir un corto
circuito entre la base y el emisor, lo cual puede provocar un dao en el amplificador operacional
que controla el disparo. Los colectores debern estar conectados a alimentacin: el colector de
transistor NPN debe ir a alimentacin positiva, y el colector del transistor PNP debe ir a
alimentacin negativa. Preferentemente, estas alimentaciones deben ser idnticas en magnitud,
para no limitar al motor en su giro.
Al momento en que el amplificador recibe una seal positiva, ste emitir una seal negativa
(debido a que es inversor). Esto har que el transistor PNP se ponga en saturacin y el NPN en
corte. Al hacer esto, el motor girar en sentido contrario a las manecillas del reloj, ya que la
corriente motriz provendr de la referencia a tierra, cruzar por el motor, y finalmente llegar a la
fuente de alimentacin negativa, a travs del transistor PNP. En caso de que el amplificador reciba
una seal negativa, el seguidor emitir una seal positiva, saturando al transistor NPN y cortando
al transistor PNP. Esto har que el motor gire en el sentido de las manecillas del reloj. Si la seal
de control es cero, el motor no se mover.
NOTA: No se debe dejar mucho tiempo el motor sin movimiento, ya que el transistor PNP tratar
de ponerse en modo de saturacin sin lograrlo, y se calentar mucho. Esto puede daar a la larga
al transistor. Si el motor est girando por mucho tiempo, los componentes se entibiarn, pero no
tendrn una temperatura considerable como para que se quemen o que calienten alguna otra parte
del sistema.

17

Ilustracin 16. Etapa de potencia

Diseo de control
Obtencin del modelo matemtico terico
Un modelo genrico del pndulo de Furuta y de las variables involucradas es

Ilustracin 17. Prototipo de un pndulo de Furuta

Donde:

( cero) es la posicin angular (radianes) del brazo medida respecto a una posicin de
referencia ARBITRARIA
( uno) es la posicin angular (radianes) del pndulo medida respecto a su posicin
vertical invertida
es el par (torque) generado por el motor elctrico y que es aplicado sobre el brazo
18

( I cero ) es la inercia del brazo cuando gira alrededor de uno de sus extremos ms la
inercia del motor
( L cero ) es la longitud del brazo
m1 es la masa del pndulo nicamente
l1 es la ubicacin del centro de masa del pndulo
J1 es la inercia del pndulo (suponiendo que gira alrededor de su centro de masa).
NOTESE QUE EL PNDULO EST CONSTITUIDO POR UNA VARILLA DE
MASA NO DESPRECIABLE
g = 9.81[m/s^2] Aceleracin de la gravedad

Podemos encontrar la cinemtica del sistema a partir de un anlisis empleando la metodologa de


Denavit Hartenberg para modelar los eslabones del sistema.
Consultando el trabajo de Carlos Osorio Ziga y Rodrigo Gutirrez Marn de la Universidad
Autnoma de Occidente podemos proponer los siguientes ejes coordenados.

Ilustracin 18. Sistema de ejes coordenados

Los parmetros D-H del sistema son los siguientes


Tabla 6. Parmetros DH

+
2

19

Con los anteriores parmetros y siguiendo la metodologa D-H encontraron la siguiente matriz de
transformacin que describe el sistema coordenado 2 en relacin al sistema coordenado 0.
sin sin
cos sin
0
2 =
cos
[
0

sin cos
cos cos
sin
0

cos
sin
0
0

cos sin sin


sin + sin cos
cos
]
1

Sabemos que la matriz de transformacin est compuesta por


0
2

=[

33
13

31

]=[

Por lo que el vector de traslacin nos permite conocer la posicin del sistema coordenado 2 (la
punta del pndulo) en todo momento por ecuaciones que dependen de los ngulos y
Todos los clculos obtenidos de esta seccin se toman de seguir el procedimiento utilizado en el
libro Control automtico: Teora de diseo, construccin de prototipos, modelado, identificacin
y pruebas experimentales del Instituto Politcnico Nacional (Hernndez, Silva & Carrillo)
El pndulo de Furuta consta de dos cuerpos que interactan, encontramos el modelo usando las
ecuaciones de Euler Langrange, dichas ecuaciones se reducen a

Donde L es el Lagrangiano.
Las ecuaciones estn igualadas a la fuerza en cada coordenada generalizada, en la ltima expresin
se iguala a cero pues no existe ningn motor pegado al pndulo que aplique una fuerza.
El Lagrangiano est definido como

L=K-P

20

K = K0 + K1
La energa cintica del sistema est compuesta por la energa cintica del brazo (K0) y la energa
cintica del pndulo (K1)
En cuanto a la energa potencial, nicamente el pndulo tiene energa potencial pues el brazo se
mueve en un plano horizontal por lo que su energa potencial es constante y puede ser considerada
igual a cero.
El clculo de la energa cintica de un cuerpo cuya masa est distribuida en todo su volumen, puede
simplificarse si se descompone en dos partes: una parte debida al movimiento traslacional de su
centro de masa (considerado como una partcula) y otra parte debido al movimiento giratorio del
cuerpo suponiendo que rota alrededor de su centro de masa.
Si el movimiento del cuerpo puede ser descrito de manera sencilla entonces no es necesaria la
descomposicin, por ejemplo el movimiento del brazo es descrito como el movimiento giratorio
de una varilla alrededor de uno de sus extremos y el giro del rotor del motor alrededor del mismo
eje.
Por lo tanto encontramos que

El movimiento del pndulo es ms complejo pues depende de movimientos combinados del brazo
y del pndulo. En este punto es conveniente descomponer el movimiento del pndulo en dos partes.
Se descompone en movimiento traslacional de una partcula de masa m1 colocada en su centro de
masa, y en el movimiento rotacional de una varilla que gira sobre el eje que pasa por el centro de
masa del pndulo:

V1 representa la velocidad traslacional, la velocidad traslacional tiene 3 componentes (X,Y,Z)


Multiplicar la traspuesta de v1 por el mismo vector es equivalente a tener el cuadrado de la
velocidad pues se trata de un vector.
La velocidad es por lo tanto,

donde X es un vector que representa las coordenadas cartesianas del centro de masa del pndulo.
21

La posicin cartesiana de este centro de masa la podemos encontrar de varias formas, una posible
manera es a travs de trigonometra , nosotros la encontramos a partir de los parmetros DH y solo
resta considerar que el ltimo eje coordenado de la metodologa se encuentra en el centro de masa
del pndulo, por lo tanto obtenemos

Como recordatorio:

L0 es la longitud del brazo


l1 es la distancia desde el eje de rotacin libre (en el brazo) hasta el centro de masa del
pndulo

Vase la siguiente imagen para las relaciones geomtricas del pndulo de Furuta

22

Ilustracin 19. Plano perpendicular del modelo

Derivamos las ecuaciones de posicin para encontrar la velocidad y sustituir en K1


Tras derivar dichas ecuaciones obtenemos que la velocidad es
V = L02 0 []2 + l12 Sin[1[]]2 0 []2 + 2 L0 l1 Cos[1[]]0 [] 1 [] + l12 1 []2
Al sustituir en
1
1
k1 = J1 1 []2 + m1 V
2
2
Obtenemos
1 =

1
1
2
J11 []2 + m1(L02 0 []2 + l12 Sin[1[]] 0 []2
2
2
+ 2 L0 l1Cos[1[]]0 []1 [] + l12 1 []2 )

As mismo definimos la energa cintica del brazo definida previamente como

23

k0 =

1
Io0 []2
2

Sabemos que
= k0 + k1
Por lo tanto
1
1
1
= Io0 []2 + J11 []2 + m1(L02 0 []2 + l12 Sin[1[]]2 0 []2
2
2
2
+ 2L0l1Cos[1[]]0 []1 [] + l12 1 []2 )
Para la energa potencial del pndulo tomamos como referencia el punto donde 1 = 0 (ver imagen
vista del plano perpendicular), Sea h una relacin encontrada trigonomtricamente de la siguiente
manera.

En esta parte del proyecto se intenta demostrar que el modelo matemtico numrico coincide con
el sistema fsico elaborado.
Para el clculo del modelo matemtico numrico es necesario sustituir los valores reales del
prototipo construido en el modelo previamente encontrado donde
En base a las ecuaciones anteriores calculamos el Lagrangiano para obtener

La siguiente ecuacin resultante

24

Modelo lineal aproximado


Queremos aplicar control lineal pero no es posible hacerlo directamente cuando el modelo de la
planta a controlar no es lineal como en la expr. 13.9. Queremos encontrar un modelo lineal que
represente con suficiente exactitud al no lineal encontrado previamente.
Sin embargo debido a esta linealizacin el controlador a disear slo ser de utilidad para equilibrar
el pndulo en su posicin invertida theta 1 = 0, siempre que el pndulo se encuentra inicialmente
cerca de theta 1 = 0
Escribimos 13.9 en variables de estado, para esto definimos las componentes del vector de estado
x como las variables incgnita de dichas ecuaciones diferenciales y sus primeras r -1 derivadas, sea
r el orden de la ecuacin diferencial correspondiente.
Las incgnitas de dichas ecuaciones son theta 0 y theta 1. Por tanto, el vector de estado lo
seleccionamos como

Los puntos de estabilidad del sistema exigen 2 condiciones, que la velocidad en cada articulacin
sea igual a cero (vease documento para ms detalle), ademas exige dos condiciones ms que se
resumen a

Estas son todas las condiciones del sistema sin embargo no existe ninguna condicin que deba
cumplir x1, es totalmente arbitraria su eleccin (se elige como cero), y para x3 usamos n = 0 pues
se desea equilibrar el pndulo en su posicin vertical invertida.
25

Con dichas condicionantes podemos encontrar las matrices A y B que linealizan el sistema.

Tras aplicar las derivadas parciales obtenemos directamente las matrices A y B.


Modelo matemtico numrico

Donde
=
1 =
1 =
0 =

26

0 =
1 =

Esto es numricamente igual a

1 = 0.032
1 = 0.2
0 = 0.4
Para los momentos de inercia se considera la forma de los componentes fsicos del prototipo
construido
0 = + +
Brazo:

Ilustracin 20. Brazo del pndulo

Cuyo eje de rotacin determina que su momento de inercia se calcule como

27

Ilustracin 21. Momento de inercia del brazo

Prisma:

Ilustracin 22. Prisma rectangular (chumacera)

Cuyo eje de rotacin determina que su momento de inercia se calcule como

28

Ilustracin 23. Momento de inercia (Iy)

Rotor

Ilustracin 24. Rotor

El momento de inercia del rotor es un momento difcil de calcular, existen diversas tcnicas, una
de ellas es estimar el peso del rotor como la mitad del peso del motor y adems estimar el radio
del mismo como la mitad del radio de la carcasa, haciendo estas estimaciones podemos calcular el
momento de inercia como

Finalmente el momento de inercia 0 del primer vnculo est dado por la suma de
0 = + + = 0.00055243 2

1 =
29

Ilustracin 25. Pndulo

Se determina el momento de inercia del pndulo a partir de su centro de masa y como si el eje de
rotacin atravesara el mismo, por lo tanto

Haciendo las sustituciones tenemos que las matrices resultantes son

30

Para verificar la validez del modelo hicimos una prueba rpida, ingresamos una seal de voltaje al
sistema como la siguiente

Ilustracin 26. Entrada de prueba (3V durante 0.6 seg)

Figura. Prueba de respuesta del sistema


Siendo que el pndulo se encontraba en su posicin en reposo, es decir con el pndulo abajo, ste
comienza a oscilar. Se observa que el pndulo se flexiona aproximadamente 45 grados. Para
realizar dicha prueba se estabiliza el modelo matemtico en dicha posicin (abajo), con esto
logramos observar una oscilacin ante una entrada pequea de voltaje. Para verificar la validez del
modelo matemtico numrico, simulamos la respuesta en lazo abierto del modelo ante dicha
entrada. Nota: La estabilizacin del pndulo en la posicin de abajo implica un cambio de signo
en las matrices A y B.
Obtenemos las ecuaciones diferenciales del sistema y las utilizamos para simular su
comportamiento en Simulink, el modelo queda de la siguiente manera

31

Ilustracin 27. Ecuacin diferencial en Matlab, estabilizado en 90

La entrada al sistema es aproximadamente la utilizada en el experimento fsico

32

Figura.

Figura.
Con la anterior prueba verificamos que el modelo es una representacin aproximada del sistema
fsico a controlar, por lo tanto es posible pasar a la etapa del diseo del controlador con dicha planta
a controlar.

Control por retroalimentacin del estado


La tcnica de las variables de estado permite utilizar la informacin suministrada por todas las
variables internas de un sistema, adems de la salida y es posible disear sistemas de control que
tienen mejores desempeos. (Hernndez Guzmn, Silva Ortigoza, & Carrillo Serrano, 2013) La
ecuacin del controlador representada en espacio de estados es
=
Sabemos adems que una funcin en espacio de estados (ecuacin dinmica) es
= +
Lo anterior implica que
33

= ( )
Donde la forma de la respuesta de la ecuacin z(t) depende de los eigenvalores de . Lo
eigenvalores deben de ser asignados arbitrariamente de forma que se tenga el comportamiento
deseado, para obtener dicho comportamiento es necesario seleccionar correctamente K y obtener
los eigenvalores en las posiciones deseadas.
El procedimiento es bsicamente
Encontrar la matriz

Que se usa en la siguiente ecuacin (como el nuevo valor de A) para obtener un polinomio que
depende de las ganancias K

Proponer eigenvalores en lazo cerrado y calcular el polinomio que dichos eigen valores producen.
Realizar una igualacin de trminos para obtener el vector de K.
(Hernndez Guzmn, Silva Ortigoza, & Carrillo Serrano, 2013)

Diseo del controlador


Considerando las matrices obtenidas del modelo numrico
0 1
0
0 0
51.229840
=[
0 0
0
0 0
113.51471
0.
36.3815563
=[

]
0.
54.572334

Sea
= [k1

k2

k3

k4]

Obtenemos la matriz que resulta en

34

Encontramos ahora

Para la ecuacin anterior A = An Por


lo que obtenemos

Sacamos su determinante y obtenemos


1334.0929278599997k1 1334.0929278599997k2 113.5142 + 36.3816k12
54.5723k32 + 36.3816k23 54.5723k43 + 4
Ahora proponemos 4 eigenvalores para realizar la igualacin de polinomios, estos pueden ser
elegidos arbitrariamente como se comentaba en la seccin anterior, sin embargo utilizamos los
valores propuestos en la bibliografa utilizada que son

Por lo tanto desarrollando obtenemos el polinomio


(0.5 + )(1 + )(18 + )(94 + ) = 846. + 2594. + 1860.52 + 113.53 + 4
Igualando trminos con el polinomio obtenido anteriormente, finalmente tenemos que
k1 = 0.647631
k2 = 1.944392
k3 = 36.6042 k4
= 3.376073

35

Simulacin del comportamiento en lazo cerrado


Sabemos que el sistema dinmico en lazo cerrado es

Por lo que recalculamos la matriz


Tras sustituir los valores de K obtenemos que

Donde

Y adems

Por lo tanto podemos realizar una simulacin de la ecuacin diferencial del anterior sistema
apoyados de Simulink, dicha simulacin es

36

Ilustracin 28. Sistema en lazo cerrado

Es importante mencionar que para dicha simulacin el ngulo del pndulo es sacado de su punto
de equilibrio para poder observar cmo se estabiliza el sistema. Por lo tanto el resultado es

Ilustracin 29. Respuesta del sistema

37

De la simulacin anterior se observa que el controlador encontrado logra estabilizar tericamente


el pndulo en menos de un segundo (cuando este es movido 3 grados de su posicin inicial)
Resulta tambin interesante observar el comportamiento de la ley de control pues es esta la que
tomara un rango de voltajes que es importante conocer si son alcanzables para implementar dicho
controlador.

Ilustracin 30. Ley de control

Se observa que el voltaje requerido para lograr el control es menor a los 2 Volts, por lo tanto es un
controlador posible de implementar.
Finalmente es posible realizar una desratizacin del modelo en espacio de estados la cual dado el
polinomio deseado en el dominio s (tiempo continuo), usando los mismos parmetros que se
usaron para obtener el polinomio deseado en el dominio s se obtiene el polinomio deseado en el
dominio z, usando las frmulas adecuadas y considerando un periodo de muestreo de 0.001
segundos. Una vez que se obtiene el polinomio deseado en el dominio z, se transforma la matriz A
y B al dominio z y se hace el mismo procedimiento que para el control in tiempo continuo es decir,
se obtiene la matriz An, se encuentran los eigenvalores de zI An y se iguala el polinomio deseado
al polinomio del sistema el cual da de resultado las ganancias de K. El control discreto es
exactamente el mismo procedimiento que para el tiempo continuo, la nica diferencia son las
consideraciones que se hacen en el domino z como lo es el tiempo de muestreo. Aunque es posible
determinar dichas matrices numricamente se opt por utilizar el modelo en el tiempo continuo
pues la bibliografa utilizada no abarcaba dichas consideraciones y las pruebas realizadas fueron
satisfactorias con el modelo en tiempo continuo.

38

Bibliografa
Hernndez Guzmn, V. M., Silva Ortigoza, R., & Carrillo Serrano, R. V. (2013). Control Automtico: Teora
de diseo, construccin de prototipos, modelado, identificacin y pruebas experimentales.
Mxico: Instituto Politcnico Nacional.

39

You might also like