Escolar Documentos
Profissional Documentos
Cultura Documentos
BICICLETA
INDICE:
1.- INTRODUCCIN
2.- BREVE DESCRIPCIN DEL MODELO
3.- OBJETIVOS A ALCANZAR EN LA SIMULACIN
4.- IMPLEMENTACIN DE LA ESCENA EN 3D
5.- IMPLEMENTACIN DEL MODELO
5.1.- IMPLEMENTACIN EN SIMULINK
5.2.- IMPLEMENTACIN EN MATLAB
5.3.- BREVE DESCRIPCIN DE LOS ARCHIVOS NECESARIOS PARA LA ANIMACIN.
5.4.- INTERFAZ SIMULINK INTERFAZ MATLAB?
6.- ALGUNAS NOCIONES BSICAS SOBRE EL
COMPORTAMIENTO DE LAS BICICLETAS.
7.- CONTROL DE LA BICICLETA
7.1.- CONTROL IMPONIENDO EL NGULO DEL
MANILLAR
7.2.- CONTROL MEDIANTE UN MOMENTO EN EL EJE Z DEL MANILLAR
7.3.- CONTROL MEDIANTE LA INCLINACIN DEL CUERPO DEL CICLISTA.
7.3.1.- CLCULO DE LOS PARMETROSDEL CUERPO DEL CICLISTA
7.3.2.-ACERCA DEL PROGRAMA
7.3.3.- INTERPRETACIN DE LOS RESULTADOS
7.4.-CONTROL COMBINADO: MOMENTO EN EL MANILLAR Y GIRO DEL CUERPO
8.- ANLISIS MEDIANTE LA SIMULACIN DEL COMPORTAMIENTO DE LA
BICICLETA
8.1.-BICICLETA A BAJAS VELOCIDADES
8.2.- DISTINTOS NGULOS DE AVANCE PARA LA HORQUILLA DE
LA BICICLETA
8.2.1.- ngulo de avance menor que el inicial
8.2.2.- ngulo de avance mayor que el inicial
9.- CONCLUSIONES
10.- MEJORAS FUTURAS
11.- DESCRIPCIN DE LA DOCUMENTACIN ADJUNTA
12.- BIBLIOGRAFA
13.- REFERENCIAS
1.- INTRODUCCIN.
Figura 1
El sistema inicial se describe cinemticamente mediante un conjunto de 9
coordenadas, las dos primeras de las cuales son las referentes a la posicin en el plano
del suelo del punto de contacto de la rueda trasera de la bicicleta, el resto de las
coordenadas son giros en sistemas de referencia locales. La descripcin del modelo se
ha realizado de tal forma que a cada giro de los antes mencionados le corresponda un
slido o sistema de coordenadas local, de manera que las coordenadas absolutas de un
punto de cualquier slido se puedan expresar como las coordenadas locales del punto
multiplicadas por las sucesivas matrices de giro de los slidos anteriores (ms la
posicin en globales del punto de contacto de la rueda trasera). Para ello ha sido
necesario introducir dos slidos auxiliares a los que se ha llamado slido intermedio 1 y
slido intermedio 2.
q xC
yC
A i1 A , Ai 2 A A
A 2 A A A , A3 A A A ,
(1)
A 4 A A A A , A5 A A A A A
siendo:
cos
A sen
0
sen
cos
A sen
0
sen
0
0
1
cos 0 , A 0 cos
0 sen
0
1
cos 0 sen
cos 0
A 0
1
0 , A 0
1
- sen 0 cos
- sen 0
cos sen 0
cos 0
A sen cos 0, A 0
1
0
- sen 0
0
1
0
0
1
cos 0, A 0 cos
0 sen
0
1
cos 0 sen
cos 0
A 0
1
0 , A 0
1
- sen 0 cos
- sen 0
cos sen 0
cos 0
A sen cos 0, A 0
1
0
- sen 0
0
1
sen ,
cos
sen
0 ,
cos
sen
0
cos
0
sen ,
cos
sen
0 ,
cos
sen
0
cos
2 G 2 q
(2)
2 G 2 q
(3)
2 k i i1 ji 2 ,
k A
0
0, i i1 Ai1
1
(4)
cos
i2
i2
1 sen , j A
0
sen cos
coscos
sen
0 0 0
0 0 0 0 0
0 0 0
A A A
1
i1
i2
0 0 0
rGi
q
(5)
Siendo rGi la posicin en globales del centro de gravedad del slido. La energa
cintica del sistema nos queda:
5
T
T
1
T mi vGi v Gi i I i i
i 2 2
(6)
5
5
T
T
T
T
1
1
T mip T Hi Hip p T G i I i G ip p T mi Hi Hi G i I i G i p
i 2 2
i 2 2
El sistema cuenta tambin con tres tipos de restricciones: Las de contacto y las
de rodadura sin deslizamiento correspondientes a las ruedas y la de movilidad. En total
7 restricciones, con lo que contamos con 2 grados de libertad.
- Las de contacto consisten en imponer que la coordenada vertical de la posicin
de contacto de cada rueda y de la tangente al contacto sean nulas.
- Las de rodadura sin deslizamiento implica que la velocidad del contacto de las
ruedas con el suelo es en todo momento nula. O lo que es lo mismo, que:
C rod , 2 p, p
C rod p, p rod , 5
0, B p
p, p
C
B 2 p
5
B p
(7)
v
v
D
D Y
0
rod , 5
p, p 0
C
0
(8)
(9)
V
t 0 Cmov q, t 0
R
(10)
C con p
Cp, p , t C rod p, p 0,
C mov p, t
(11)
C pcon
0
B p 0 Dp C t
C pmov
V R
(12)
p d Dd
Dip i Ct
(13)
I
0
p i
p
p i
1
1
E p i F
p d D d Di
D d C t
(14)
p i F Ep
p
Ep i E
i J
(15)
i ET Qv Q grav Qext MJ
ET MEp
(16)
Para realizar la escena en VRML es preciso definir una serie de nodos. Un nodo
es una entidad en VRML que debe ser declarada al principio del programa y cuyas
propiedades pueden ser modificadas. Entre dichas propiedades estn las geomtricas de
cada nodo, que pueden ser especificadas mediante el uso de MATLAB o Simulink, con
lo que se obtendr la animacin buscada. Estos nodos se pueden definir de forma
jerrquica, de manera que los cambios que se produzcan en una posicin mayor del
rbol jerrquico afectaran a los nodos inferiores. Aprovechando esta cualidad se
definirn los nodos de forma que cada uno equivalga a un slido del modelo
matemtico. Al tener estos slidos asociados cada uno un giro dichos giros resultarn
ms fciles de definir. A continuacin se
muestra el rbol jerrquico correspondiente a la
bicicleta y que coordenadas corresponden los
cambios que se realizarn en cada nodo:
1.- Mundo.
2.- Bicicleta_i2. Traslacin xc, yc. Rotacin .
3.- Bicicleta_i3. Rotacin .
4.- Beta. Rotacin .
5.-Rueda_trasera. Rotacin .
6.- Manillar. Rotacin .
7.- Rueda_delantera.
Rotacin .
Figura 6
Para simplificar la animacin se han dibujado las figuras ya giradas este ngulo
, para as ahorrar el coste computacional de tener que actualizar el valor del nodo Beta
cada instante.
Ntese que pese a que los nodos creados tienen correspondencia con los slidos
definidos en el modelo, no poseen los mismos nombres. Por ejemplo, el nodo
Bicicleta_i3 se corresponde con el slido i2.
Figura 7
a partir de ahora q.
Asimismo en dicha funcin de estado (Bicisfun) se definen cuales se van a ser
las derivadas de los diez estados continuos. Dichas derivadas vendrn dadas por la
funcin Derivadasbici.m, en las que se usan las ecuaciones del modelo matemtico de
partida de este proyecto para calcular . Es decir, Derivadasbici.m hace el siguiente
proceso:
( )
( )
(18)
( )
En el que
( ) son las matrices resultantes de transformar en ODEs
las ecuaciones de Lagrange y q es el vector de 10 coordenadas que se coment
anteriormente.
Con el vector q y su derivada definidos en la funcin de estado (S-function)
Simulink es capaz de actualizar los estados de la misma dando el q siguiente. El proceso
anterior se puede entender como el que se muestra en el diagrama de la figura 9.
Joystick
Entradas u
VECTOR q
(COORDENADAS
POSICIN+DERIVADAS)
Vector q
FUNCIN
DERIVADASBICI.M
(DERIVADAS VECTOR q)
SIMULINK
Integra para obtener
siguiente q
Figura 9
Escena
VRML
simulacin. En dicho programa, por medio de los comandos tic y toc de MATLAB se
obtendr el tiempo del CPU y mediante un bucle while la integracin se realizar para
los sucesivos intervalos de tiempo dados por el comando toc, que se encuentra en dicho
bucle y despus del integrador.
La funcin del integrador explicito se llamar RungeKutta4.m y tendr como
inputs la funcin a integrar, que es la definida por DerivadasBici.m, y el intervalo de
tiempo dado por el comando toc.
Figura 10
= . (19)
C1
C2
P2
a
b
P3
c
Figura 11
y
o
P1
P2
Figura 12
C2
C1
P2
P3
P1
Y
Figura 13
cos
, y su valor ser:
(20)
(21)
(22)
(23)
Y sustituyendo el valor de
sin
(24)
(25)
sin
(26)
(28)
= sin
sin
(27)
=(
) sin
sin
cos
(29)
sin
(30)
>
cot
el coeficiente
que multiplica a
>0
>
(31)
> 0 (32)
( , )+
( )+
(33)
( , , ) = 0
A la matriz M sin la dcima ecuacin se le llamar
y ser de 9x10. Si
pasamos la tercera columna de dicha matriz, que solo multiplica a , al otro miembro de
la ecuacin nos queda:
( ) +
( , )+
( )+
(34)
( , , ) = 0
Donde
ahora es de 9x9 y
se corresponde con la tercera columna de la
matriz
anterior. Se procede a convertir las ecuaciones anteriores en ODEs con el
(35)
sin
Donde
sin
sin (sin
sin
(36)
sin
sin
(37)
> 0 (38)
(39)
(40)
(41)
(42)
(43)
Negativo
Positivo
Joystick (Momento
)
Izquierda
Derecha
Derecha
Izquierda
En el cuadro anterior se puede observar que el sentido de los ejes escogidos para
el manillar no concuerda con el del joystick, ya que se busca que inclinar el joystick
hacia la izquierda sea lo mismo que hacer fuerza en el manillar hacia la izquierda, lo
que se correspondera con un momento positivo en el mismo.
Para corregir esto se ha establecido que el momento aplicado en el manillar ser
la seal del joystick u(1) cambiada de signo.
= (1)
Una vez hecho el cambio arriba indicado, cuando el joystick se inclina hacia la
izquierda, la bicicleta gira a la derecha, ocurriendo lo mismo con los respectivos
sentidos contrarios. Este hecho es revelador ya que para que la bicicleta gire a la
derecha el ngulo del manillar tiene que ser negativo tal como viene descrito en el
dibujo de la figura 1, y sin embargo el momento aplicado es en sentido positivo. Lo que
realmente ocurre es que el manillar gira por un breve periodo de tiempo en el mismo
sentido que el momento aplicado pero debido a que el cuadro de la bicicleta se
posiciona en el sentido contrario aparece una fuerza creada por el ngulo de avance de
la horquilla que hace que el manillar gire rpidamente hacia el mismo lado que la
inclinacin del cuadro. Este fenmeno se conoce como counter steering [3].
Usando la interfaz del simulador en Simulink nos es posible analizar el
movimiento de la bicicleta ante distintos tipos de entradas. En la figura 14 se ha
introducido como entrada una funcin escaln de 5Nm durante 0.05 segundos. Se puede
ver claramente el fenmeno del counter steerig, ya que el ngulo del manillar comienza
teniendo el mismo signo que el momento aplicado para despus cambiar de signo,
girando hacia la derecha, mismo sentido que el cuerpo de la bicicleta
Figura 14
0
=
0
0
1
= 0
0
0
cos
sin
0
sin
cos
(38)
Donde
(39)
Donde
son respectivamente la posicin del silln y del centro de
y
gravedad del slido 6 en las coordenadas locales correspondientes a cada slido. En el
esquema de la figura 15 se muestra grficamente como se han definido estos vectores.
Z
rg6
rsillin
C2
C1
P2
P3
P1
Y
Figura 15
El resto de las matrices necesarias para las ecuaciones se calculan al igual que
antes, usando el mismo programa de clculo simblico sin ms que introducir en la
ecuacin de la energa cintica los trminos correspondientes al nuevo slido 6.
Ahora el sistema tiene 10 coordenadas contando , pero el mismo nmero de
restricciones. Como es una variable guiada no hace falta calcularla con lo que no hace
falta la dcima ecuacin del sistema siguiente:
( ) +
( , )+
( )+
(40)
( , , ) = 0
A la matriz M sin la dcima ecuacin se le llamar
y ser de 9x10. Si
pasamos la decima columna de dicha matriz, que solo multiplica a , al otro miembro de
la ecuacin nos queda:
( ) +
( , )+
( )+
(41)
( , , ) = 0
Donde
ahora es de 9x9 y
se corresponde con la decima columna de la
matriz
anterior. Se procede a convertir las ecuaciones anteriores en ODEs con el
mtodo de generalized coordinate partitioning y ya se tienen las ecuaciones finales del
sistema como en los dos mtodos de control anteriores.
=
(42)
0
= 0
0
=
12
=
=
12
12
) = 3.708
) = 2.76
(43)
0
0
) = 1.135
0
= 0
= 0.4
El sistema de coordenadas locales del slido 6 tiene los ejes girados con
respecto al del slido 3 el ngulo , que para la bicicleta en su posicin vertical tiene el
valor
. Se quiere que el ciclista vaya en una posicin erguida, con el tronco
perpendicular al plano del suelo, que es la postura que los ciclistas suelen adoptar al
conducir sin manos. Por ello habr que deshacer el giro
para que el centro de
gravedad y el tensor de inercia en locales del slido 6 sean los correspondientes a un
conductor erguido.
=
cos
0
sin
0
1
0
sin
0
cos
= 5.9682rad
3.4610
2.7600
0.7579
1.3820
0.7579
(44)
0.1239
0
0.3803
Estos valores son los que finalmente se introducirn en las ecuaciones como
parmetros del sistema. Para ver de qu manera afecta la inclinacin del cuerpo al
control de la bicicleta se podr girar el cuerpo distintos ngulos para conseguir los
correspondientes parmetros.
= .
Es importante remarcar que para este tipo de control lo cercano que este el
tiempo de la animacin al tiempo real es un factor crtico, debido a que la masa del torso
del ciclista es muy grande en relacin con la del sistema y cualquier discrepancia entre
los tiempos real y de animacin se expresa en unos cambios en las derivadas de que
harn la bicicleta incontrolable debido a la elevada fuerza de inercia asociada al giro del
cuerpo. Una animacin a la mitad de velocidad que el tiempo real har que la inercia del
torso del ciclista sea cuatro veces mayor. Esto hace completamente inviable la
implementacin mediante el ajuste del paso de integracin en Simulink.
peso del conductor y el del vehculo es muy elevada, de manera que el ngulo mximo
del cuerpo considerado en la simulacin es de entorno a 1 2 grados. Esto no sera
posible para otro tipo de vehculos, como por ejemplo una motocicleta.
Parar la
simulacin.
Frenar
Cuerpo dcha.
Manillar izq.
Acelerar
Figura 16
8.ANLISIS
MEDIANTE
COMPORTAMIENTO DE LA BICICLETA.
LA
SIMULACIN
DEL
+ RG2 =
=
(45)
cos
0
sin
Donde Restriccin es el vector en globales que une el c.d.g. del slido 4 con el
contacto suelo-rueda delantera.
RA4
RAman
rG4
rG2
Restriccion
Figura 17
(46)
0
0
0.2
=
=
(47)
(48)
Ahora que tenemos las dos componentes no nulas del vector que une los centros
de gravedad de los slidos 2 y 4 en globales, podemos obtener rG4 transformando dicho
vector a las coordenadas locales del slido 4.
4
=
en radianes.
Figura 21
9.- CONCLUSIONES
Pese a lo que inicialmente pareca, se puede controlar aceptablemente la
simulacin de una bicicleta. Aunque el manejo de la bicicleta nunca ser tan bueno
como en la realidad debido a la falta de informacin sensorial, se puede seguir sin
problemas un circuito con distintos tipos de curvas. La clave para ello es la simulacin
en tiempo real, ya que sin ella el desfase entre lo que hace el usuario y lo que percibe
imposibilita la conduccin.
El cuerpo del ciclista, aunque til a la hora de manejar la bicicleta, no es
necesario, pudindose controlar esta solo con la aplicacin de momentos en el manillar
y permaneciendo el cuerpo siempre en el plano del cuadro.
TIPOS DE ARCHIVO:
En la carpeta Programa se pueden encontrar los siguientes tipos de archivo.
Todos ellos deberan poder abrirse en un ordenador con un sistema operativo Windows
XP, Windows Vista o Windows 7 en el que se encuentre instalado el programa
MATLAB 2009 o superior con las Toolboxes correspondientes a la instalacin por
defecto.
- Archivos .wrl : Es el formato de las escenas implementadas en VRML. Hay al
menos un archivo .wrl por cada versin del simulador.
- Archivos .m: Estos archivos contienen el cdigo de los programas de
MATLAB.
- Archivos .mdl : Se corresponden con los diagramas de bloques de Simulink.
- Archivos .jpg: Las texturas y fotos incluidas en el proyecto irn en este
formato.
- Archivos .txt: En este formato se guardan los valores simblicos de las
matrices que intervienen en las ecuaciones.
funcionando, dar un pequeo toque al joystick para introducir una pequea perturbacin
y que la bicicleta empiece a oscilar siguiendo el modo de weaving.
2.3.- Programas de clculo simblico: En esta carpeta se encuentran los
programas de MATLAB que se han utilizado para el clculo simblico de las
ecuaciones de la bicicleta con y sin inclinacin del cuerpo, as como el programa
utilizado para calcular rG4 en funcin del ngulo de avance.
12.- BIBLIOGRAFA
Para la elaboracin de este proyecto el autor se ha apoyado en los siguientes
textos :
-
REFERENCIAS
[3] Texturas: Son archivos de imagen utilizados por los programas de CAD y en
VRML para dar apariencia a los slidos adaptando la imagen a su superficie. Por
problemas de compatibilidad el editor de VRML no acepta las texturas de la biblioteca
de SolidWorks. Las texturas que se han usado en las escenas VRML son archivos .jpg y
se han guardado en la carpeta textures a la cual se hace referencia en dichas escenas.