Vous êtes sur la page 1sur 6

IDENTIFICACIÓN Y CONTROL DE UN PÉNDULO INVERTIDO EN

TIEMPO REAL.
CONSTRUCCIÓN Y CONTROL DE UN PÉNDULO INVERTIDO EN
TIEMPO REAL.

Alumnos: Garay Mancebo Del Castillo José Rodrigo, González Cota Juan Carlos,
Guerrero Moreno Ricardo Enrique, Guzmán Tapia Manuel Guadalupe, Hipólito Solís
Josué, Juárez Ley Israel, Medina Soto Ohana, León Medina Alba Lisseth, Muñiz
López José Roberto, Pardini Arvizu Oscar Isaac, Penilla Guerrero Martín, Soto
Ramírez Luis Alfonso, Vásquez Cervantes Luz Angelina.
Amezola Gonzalez Damián Rodrigo, Cortes Ramírez Rogelio.

Asesores: M.C Laura Jiménez Beristain, M.C. José Jaime Esqueda Elizondo

Resumen.
Se ilustra el problema de control de un péndulo invertido mediante la construcción de un
prototipo del mismo. Se obtiene además un modelo del sistema mediante la técnica de
identificación con análisis espectral y el modelo paramétrico ARMAX para
posteriormente emplearse en el diseño de un controlador PID. El prototipo es
desarrollado con el paquete computacional de Real Time Windos Target de Simulink.

Objetivo.
Desarrollar un prototipo del péndulo invertido.
Identificar al péndulo empleando la técnica de análisis espectral.
Controlar al péndulo mediante un PID.

Motivación.
Crear un módulo didáctico de control que permita consolidar la teoría del control
mediante el desarrollo del problema del péndulo invertido.

Introducción
La planta a controlar es un péndulo invertido, el cual está formado por un carro
con un mástil móvil acoplado a él. El péndulo invertido es inestable, puesto que puede
caer en cualquier momento y en cualquier dirección si no se aplica una fuerza de control
u adecuada. La meta es mantener el mástil verticalmente mediante una fuerza horizontal
aplicada al carro, el cual se desplaza a lo largo de una ruta de fricción. El mástil está
conectado al carro por una unión que gira en el eje vertical perpendicular a la ruta.
Se considera que es un sistema bidimensional y que el péndulo se desplaza solamente en
el eje horizontal. La masa del péndulo está concentrada al extremo del mástil, tal como se
muestra en la figura I.1, donde la masa del mástil es despreciable.
y
lsen
x

m

lcos m g

0 x
P
u
M

Fig. I.1: Sistema de péndulo invertido.


Donde:
 : es la posición angular del mástil con respecto a la vertical (radianes)
u : es la fuerza de manejo sobre el carro (N) (lb)
l : es la longitud media del mástil (m) (ft)
m : es la masa del mástil (Kg) (lb)
M : es la masa del carro (Kg) (lb)
g : es la constante de aceleración gravitacional (9.81 m/seg2 = 32.2 ft/sec2).

Planteamiento del problema.


En este caso, para el péndulo invertido, la entrada de referencia deseada es r = 0, que es
la posición vertical del péndulo. Si se requiere balancear al péndulo fuera de la posición
vertical ( r 0 ), entonces el controlador deberá mover el carro a una velocidad constante
para que el péndulo no caiga.
En la figura I.2, se muestra gráficamente el movimiento del mástil del péndulo invertido.
Positivo Positivo Cero Negativo Negativo
grande pequeño pequeño grande
r r r=0 r r

y y y y y

   

Fig. I.2: Representación de la variable de entrada en el péndulo invertido.


Aplicaciones.

Resultados.

Inicio: Marzo 2005. Septiembre 2005.

Publicaciones.
MODELO MATEMATICO PARA EL PENDULO
INVERTIDO
Se hacen las siguientes consideraciones para obtener el modelo matemático que
represente la dinámica del péndulo invertido:
Se define  como el ángulo que forma el mástil con respecto a la vertical (debido a que
se desea mantener el péndulo invertido en posición vertical, se supone que el ángulo  es
pequeño). También se definen las coordenadas del centro de gravedad de la masa como
(xG, yG). Entonces, de acuerdo a la figura A.1.
y
lsen
x

m

lcos m g

0 x
P
u
M

Fig. A.1: Sistema de péndulo invertido.

XG = x + lsen
YG = lcos
Aplicando la segunda ley de Newton en la dirección x del movimiento, (considerando la
fricción) se tiene:
d 2x d2XG dx
M 2 m 2
B u
dt dt dt
o bien,
d 2x d2 dx
M 2  m 2  x  lsen   B  u
dt dt dt
Nótese que:
d d
sen   cos  cos   sen 
dt dt
d2 d2
2
sen   sen  2   cos   2
cos    cos   2   sen 
dt dt
Por lo que al sustituir se tiene:
M  m  x  Bx  ml  sen  2  ml  cos    u ...(1)

La ecuación de movimiento de la masa m en la dirección y no se debe escribir sin


considerar el movimiento de esa masa m en la dirección x. Por lo tanto, en lugar de
considerar el movimiento de la masa en la dirección y, se considera el movimiento
rotacional de la masa m alrededor del punto P, aplicando la segunda ley de Newton al
movimiento rotatorio, se obtiene (considerando el momento de inercia)
d 2 d 2XG d 2YG
J 2 m l cos   m 2 lsen  mglsen
dt dt 2 dt
o bien
d 2  d 2   d2 
J 2  m 2  x  lsen  l cos   m 2  l cos   lsen  mglsen
dt  dt   dt 
que se puede desarrollar como sigue:
  
J  m x  l  sen  2  l  cos   l cos   m  l  cos   2  l  sen  lsen  mglsen 
simplificando, se llega a
J  mlx cos  ml 2  mglsen .
Considerando el momento de inercia,
 J  ml 2   mlx cos  mglsen ...(2)
ml 2
donde J  , representa al momento de inercia del péndulo invertido respecto al
3
centro de masas, entonces:
4
ml 2  mlx cos  mglsen
3

Para mantener vertical al péndulo invertido se consideran a (t) y   t  como


magnitudes pequeñas, por lo que sen   , cos   1 y  2  0 . Entonces las
ecuaciones (1) y (2) pueden linealizarse como:

M  m  x  Bx  ml  u


 J  ml   mlx  mgl
2

 M  m s 2  Bs mls 2
    
  M  m  J  ml 2 s 4  J  ml 2 Bs 3   M  m  mgls 2  Bmgls  (ml ) s 4
mls 2
 J  ml  s
2 2
 mgl
    
   M  m  J  ml 2  (ml ) s 4  J  ml 2 Bs 3   M  m mgls 2  Bmgls 
  s mls 2

U  s   M  m   J  ml 2   (ml ) s 4   J  ml 2  Bs 3   M  m  mgls 2  Bmgls
O bien:

ml
s
  s q

U  s
s3 

J  ml 2 B 2  M  m  mgl
s  s
Bmgl 
q q q
 
donde: q   M  m  J  ml 2  (ml )  
APLICACIONES EN TIEMPO REAL.
Real Time Windows Target

Introducción

La toolbox Real time Target es una herramienta de Matlab que permite adquirir y generar
señales en tiempo real.
La comunicación entre el equipo y el hardware exterior se realiza por medio de una
tarjeta de adquisición de datos, en este caso DAQ (Nacional Instruments PCI 6025E) la
cual permite operar con señales de entrada y/o salidas análogas y digitales.

CARACTERISTICAS Y REQUERIMIENTOS DEL REAL TIME WINDOWS TARGET


Para poder realizar aplicaciones en tiempo real es necesario que la computadora posea las
siguientes características:
 Un código compilador el cual es generado de un código C usando el compilador
Visual C/C++
 Debe tener una relación con el modelo del Simulink, el cual tiene un contenido
ejecutable de todos los componentes de la herramienta simulink de matlab como:
Conexiones entre bloques
Dependencias de tiempos.
Variables en los bloques del simulink.
 Relación con el Kernel, donde el ejecutable debe ser cargado y ejecutado
directamente por el Real Time Windows Target kernel, de lo contrario no puede ser
ejecutado. El driver de modo kernel intercepta las interrupciones de tiempo del
reloj de la computadora, manteniéndolas para operaciones del sistema windows y
asegura la ejecución en tiempo real de las aplicaciones en tiempo real.
 El checksum es utilizado por el kernel para determinar la estructura del modelo
simulink en el momento de la generación del código, el cual es consistente con la
estructura de la aplicación en tiempo real durante la ejecución, es decir, este se
asegura que cuando se cambian los parámetros durante la ejecución el modelo de
simulink realice un correcto mapeo de los parámetros modificados en las
locaciones de memoria correctas durante la aplicación en tiempo real.
DIFERENCIAS ENTRE REAL TIME WORSHOP Y REAL TIME WINDOWS
TARGET

Real Time Windows Target esta diseñado para operar con una gran flexibilidad y rapidez
durante la creación de modelos a simular, esta ventaja permite modificar parámetros
durante la ejecución en tiempo real, incrementando el tamaño de código generado.
Real Time Workshop posee otros códigos de formatos los cuales pueden generar códigos
más compactos necesitados para aplicaciones especificas.

Vous aimerez peut-être aussi