Sie sind auf Seite 1von 150

UNIVERSIDAD DE EXTREMADURA

ESCUELA DE INGENIERAS INDUSTRIALES

Herramienta de simulacin de la
dinmica de vehculos automviles

PROYECTO PRESENTADO PARA OPTAR AL TTULO DE


INGENIERO INDUSTRIAL
POR

MANUEL TERRONES GUERRERO

BADAJOZ, DICIEMBRE DE 2010

PROYECTO FIN DE CARRERA


Autor:
MANUEL TERRONES GUERRERO
Director:
FRANCISCO JAVIER ALONSO SNCHEZ
Tribunal de evaluacin:
FERNANDO ZAYAS HINOJOSA
MANUEL REINO FLORES
DAVID RODRGUEZ SALGADO

NDICE

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

NDICE
1

INTRODUCCIN 5

1.1

Objeto del proyecto6

1.2

Sistema de direccin 7

1.3

Sistema de traccin 9

1.4

Sistema de suspensin 13

DINMICA LATERAL .... 17

2.1

Fundamentos tericos 18

2.1.1 Mecanismo de Ackermann 18


2.1.2 ngulo de deriva 20
2.1.3 Modelo: Modelo de la bicicleta 22
2.1.4 Comportamiento en curva del vehculo 22
2.2

Interfaz grfica 27

2.2.1 Datos de entrada 27


2.2.2 Parmetros de salida 28
2.2.3 Operacin y funcionamiento 29
2.2.4 Ejemplo prctico 34

DINMICA LONGITUDINAL38

3.1

Fundamentos tericos39

3.1.1 Curva de par y curva de potencia 39


3.1.2 Equilibrio dinmico longitudinal 42
3.1.3 Relaciones de transmisin 45
3.1.4 Limitacin de esfuerzos tractores por adherencia .49
3.2

Interfaz grfica.53

NDICE

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

3.2.1 Datos de entrada 53


3.2.2 Parmetros de salida 55
3.2.3 Operacin y funcionamiento .58
3.2.4 Ejemplo prctico 69

DINMICA VERTICAL. 75

4.1

Fundamentos tericos 76

4.1.1 Elementos elsticos 76


4.1.2 Elementos amortiguadores 81
4.1.3 Excitaciones: carretera, rueda y motor84
4.1.4 Modelo: Modelo de 1GDL: Bote 88
4.2

Interfaz grfica 91

4.2.1 Datos de entrada 91


4.2.2 Parmetros de salida 91
4.2.3 Operacin y funcionamiento 92
4.2.4 Ejemplo prctico 96

ANEXOS 99

5.1

Dinmica de vehculos: Cdigo del programa100

5.2

Dinmica lateral: Cdigo del programa 103

5.3

Dinmica longitudinal: Cdigo del programa 115

5.4

Dinmica vertical: Cdigo del programa 140

BIBLIOGRAFA149

INTRODUCCIN

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Captulo I: Introduccin.

INTRODUCCIN

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

1 INTRODUCCIN.
1.1 Objeto del proyecto.
El objeto del proyecto es desarrollar, en el entorno MATLAB, un software que
realice, partiendo de los parmetros bsicos del vehculo y de las caractersticas
de maniobra, la simulacin de cada una de las tres dinmicas del vehculo
automvil:
Dinmica lateral: comportamiento en curva.
Dinmica longitudinal: aceleracin y frenado.
Dinmica vertical: comportamiento de la suspensin del vehculo

INTRODUCCIN

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

1.2 Sistema de direccin.


El sistema de direccin es el conjunto de mecanismos que tiene por misin orientar
las ruedas directrices del vehculo (generalmente las delanteras) para realizar el
correcto trazado del itinerario necesario durante su funcionamiento, es decir, es el
sistema encargado de modificar la trayectoria del automvil.
Est compuesto por una serie de barras, rtulas y dems elementos (dependiendo
del tipo de direccin: cremallera, tornillo sin fin, servodireccin, etc.), todos ellos
comandados a travs del movimiento circular que se realiza en el volante del
vehculo.
Todo sistema de direccin debe cumplir una serie de caractersticas o requisitos
bsicos para su correcto funcionamiento, tales como:
Seguridad: depender en gran medida de la fiabilidad del conjunto.
Irreversibilidad: el volante hace girar las ruedas, pero por el contrario, las
oscilaciones de estas debidas al terreno no se transmiten al volante.
Precisin y suavidad: ambas caractersticas estn bastante relacionadas con
la relacin de desmultiplicacin (relacin entre el ngulo de giro de las
ruedas y el ngulo de giro del volante).
En cuanto a los tipos de sistemas de direccin se pueden citar los siguientes:
Mecnicos:
o De tornillo sin fin: consiste en un tornillo sin fin, unido a la columna de
direccin, que engrana con una rueda dentada acoplada al mecanismo
que permite el movimiento de las ruedas.

Fig. (1.1): Direccin mecnica por tornillo sin fin.

o De cremallera: en este caso el sistema est formado por un pin


helicoidal unido a la columna de direccin que engrana con una
cremallera unida directamente a los brazos de direccin de las ruedas.
Es un sistema con mayor rendimiento mecnico.

INTRODUCCIN

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Fig. (1.2): Direccin mecnica por cremallera.

Asistidos: sistema de direccin provisto de un mecanismo de ayuda para


reducir el par de giro necesario para mover el volante. Segn la naturaleza
del mecanismo podemos tener:
o Hidrulica: el movimiento lo realiza un sistema hidrulico cuya bomba
se acciona de forma mecnica a travs de un sistema de poleas y
correas que transfieren el movimiento del motor del vehculo a la
bomba.
o Electro hidrulica: a diferencia del anterior la bomba se acciona
elctricamente.
o Electro mecnica: en este caso, en lugar de una bomba hidrulica,
se dispone de un motor elctrico para realizar el movimiento de la
direccin.

Fig. (1.3): Direccin asistida hidrulica.

INTRODUCCIN

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

1.3 Sistema de traccin.


Se define el sistema de traccin como el conjunto o cadena cinemtica encargada
de transmitir el movimiento desde el motor del vehculo a las ruedas motrices del
mismo.
La necesidad de emplear este sistema viene impuesta por las exigencias en
cuanto a diseo (interesa tener la planta de potencia en una zona determinada del
vehculo), a facilidad de movimientos (entre el motor y las ruedas), a poder
conectar y desconectar el motor de las ruedas motrices (embrague), a disponer de
un amplio rango de velocidades,,etc..
Segn la localizacin de las ruedas motrices se distinguen tres tipos de sistemas
de traccin:
Traccin delantera: las ruedas motrices y directrices son las mismas, las
situadas en el eje delantero. Proporciona un diseo simple del eje trasero,
adems de otras facilidades y mejoras como amplitud del maletero y
sencillez en la colocacin del depsito de combustible. Por el contrario se
producir un mayor desgaste en los neumticos delanteros que en los
traseros y, a plena carga, menor capacidad de traccin en rampas
pronunciadas.
Traccin trasera: las ruedas motrices son las del eje trasero del vehculo,
mejorando as la capacidad de traccin a plena carga y presentando las
cuatro ruedas un desgaste equilibrado de los neumticos. Como
contrapartida, el vehculo ser menos estable y tendr un coste de
produccin mayor.
Traccin total: en este caso, las cuatro ruedas del vehculo son motrices. La
principal ventaja del sistema es la mayor capacidad de traccin en zonas de
pendiente (remontaremos pendientes mayores) y en zonas de baja
adherencia. Por el contrario, la mecnica del vehculo ser mucho ms
compleja, elevando as en gran medida el coste de fabricacin.
Todo sistema de traccin est formado, como mnimo, por los siguientes
elementos:

Fig. (1.4): Sistema de traccin.

INTRODUCCIN

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Motor de combustin interna (MCI): es el encargado de convertir la energa


qumica del combustible que se quema en su interior en energa mecnica.
Los tipos de MCI que utilizan los automviles suelen ser dos:
o Motor diesel: funciona por ignicin. La combustin se logra por el
aumento de temperatura que produce la compresin del aire en el
interior del cilindro y la posterior inyeccin del combustible pulverizado
a alta presin.
o Motor gasolina: su funcionamiento se basa en el ciclo de Otto. La gran
mayora de los empleados en los automviles son los motores de
cuatro tiempos: compresin, combustin, expansin y escape. En este
caso la combustin se consigue por medio de una chispa que salta
entre dos electrodos (buja).
Embrague: es el mecanismo encargado de conectar y desconectar el MCI de
la transmisin. En la siguiente figura se muestra una seccin en la cual se
aprecian sus principales componentes (muelle de diafragma, disco de
friccin y amortiguador torsional):

Fig. (1.5): Embrague

Transmisin: es el mecanismo encargado de variar las distintas relaciones


de transmisin entre el motor y las ruedas del vehculo, dependiendo de las
prestaciones necesarias en un instante dado.
Segn el tipo de actuacin, las transmisiones se clasifican en:
o Mecnica: es la conocida como transmisin manual. Logra las
variaciones de las relaciones de transmisin a partir de trenes de
engranajes ordinarios.

10

INTRODUCCIN

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

o Hidrodinmica: es un tipo de transmisin automtica. En lugar de


engranajes ordinarios, como en el caso anterior, se fabrica con
engranajes planetarios o epicicloidales, adems de un convertidor de
par.
o Continuamente variable: nuevamente una transmisin automtica,
pero con la particularidad de tener un nmero infinito de marchas.
Todo ello se obtiene a travs de variadores continuos.
A continuacin se muestra una seccin de una transmisin:

Fig. (1.6): Transmisin.

Diferencial: elemento cuya misin es repartir el par entre las ruedas motrices,
consiguiendo que giren a distintas revoluciones cuando el vehculo se
dispone a trazar una trayectoria curva.
El diferencial ordinario presenta el inconveniente de que realiza un reparto
inadecuado del par entre las ruedas motrices, ya que en caso de que una de
las ruedas pierda el contacto con la carretera o tenga poca adherencia
(barro), transmite la totalidad del par motor a dicha rueda.
Para evitar este problema, se desarrollaron otros tipos de diferenciales,
como el diferencial Torsen, diferencial autoblocante formado por un tren de
engranajes planetarios con dentado helicoidal, o el diferencial Haldex.
Por ltimo, destacar que en los vehculos con traccin a las cuatro ruedas
son necesarios tres diferenciales: uno para el eje delantero, otro para el
trasero y un tercer diferencial central (reparte entre un eje y otro).

11

INTRODUCCIN

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Fig. (1.7): Diferencial Torsen.

12

INTRODUCCIN

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

1.4 Sistema de suspensin.


Se llama sistema de suspensin al conjunto de elementos elsticos y elementos
amortiguadores que se interponen entre las masas no suspendidas (ruedas) y las
masas suspendidas (bastidor, carrocera, cargas,, es decir, el resto del vehculo).
Su necesidad surge ante la imposibilidad de construir carreteras completamente
niveladas, de forma que no se produjeran movimientos verticales en las ruedas del
ni el balanceo del propio vehculo.
Las funciones ms importantes de este sistema se resaltan a continuacin:
Disminuir la amplitud y frecuencia de las vibraciones que se producen por la
forma irregular de la superficie por la que circula el vehculo.
Mantener las ruedas en contacto con la superficie de rodadura.
Entonces se puede decir que la suspensin tiene la misin de garantizar el confort
y seguridad de los pasajeros del vehculo.
Todo sistema de suspensin estar formado, como ya se cit anteriormente, por
los siguientes elementos:
Elementos elsticos: son los encargados de almacenar la energa elstica.
Elementos amortiguadores: su labor es disipar la energa almacenada,
limitando as las oscilaciones.
Estos elementos sern tratados con mayor detalle en el captulo 4 dedicado a la
dinmica vertical del vehculo.
La clasificacin de las suspensiones segn el grado de actuacin es:
Suspensiones pasivas: generalmente, almacenan energa mediante un
resorte y la disipan mediante un amortiguador.

Fig. (1.8): Esquema de una suspensin pasiva.

13

INTRODUCCIN

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

El principal inconveniente es que tiene los parmetros fijos (cte. del muelle y
cte. del amortiguador). Como ventaja destacar que no necesita aporte de
energa y, por lo tanto, desde el punto de vista econmico, ser ms barata.
Suspensiones activas: al igual que las anteriores, almacenan energa y la
disipan, pero adems tiene la particularidad de introducir energa en el
sistema.
A diferencia de las suspensiones pasivas, las activas, no son de parmetros
fijos. Esto se traduce en una importante ventaja: por medio de la alteracin
automtica de dichos parmetros varan las caractersticas de la suspensin
en funcin de las condiciones necesarias en cada instante, adaptando as el
sistema de suspensin al medio por el cual circula el vehculo.
El principal inconveniente de las suspensiones activas es que precisan de un
diseo ms complejo debido al aporte de energa, lo que conllevar un
incremento notable en el coste de fabricacin.

Fig. (1.9): Esquema de una suspensin activa.

Suspensiones semiactivas: este tipo de suspensin presenta un gran


nmero de similitudes con las suspensiones activas, ya que permite regular,
al igual que stas, los parmetros del sistema. Sin embargo, hay una gran
diferencia: las suspensiones semiactivas, al igual que las pasivas, no
necesitan aporte de energa. As pues, la variacin se produce por medio de
componentes regulables, que pueden estar o no, comandados
electrnicamente por medio de sensores.

14

INTRODUCCIN

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Fig. (1.10): Esquema de una suspensin semiactiva.

Adems de la clasificacin anterior se establecern los siguientes tipos de


sistemas de suspensin:
Sistemas dependientes: tambin denominado de eje rgido. Las ruedas
estn conectadas a un mismo eje rgido, de forma que sus movimientos
estn acoplados. Se suele emplear en algunos automviles con traccin
trasera en eje posterior y en el eje delantero de vehculos con traccin total.

Fig. (1.11): Suspensin dependiente.

Sistemas independientes: cada rueda se conecta al automvil de forma que


su movimiento no interacta con el resto de las ruedas, independizando as
sus movimientos verticales. Se emplea en general en el eje delantero.

15

INTRODUCCIN

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Fig. (1.12): Suspensin independiente.

Sistemas semidependientes: permiten un movimiento independiente limitado


al transmitir torsin al eje slido que los conecta.

Fig. (1.13): Suspensin semiindependiente.

16

D.LATERAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Captulo II: Dinmica Lateral.

17

D.LATERAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

2 DINMICA LATERAL.
2.1 Fundamentos tericos.
2.1.1 Mecanismo de Ackermann.
El mecanismo de Ackermann se emplea en los automviles para que, al negociar
una curva, las ruedas del vehculo realicen un movimiento de rodadura puro.
El mecanismo consiste en una serie de barras, cuatro en total (de ah que se
conozca con el nombre de cuadriltero de Ackermann), que conectan los ejes de
las articulaciones de las ruedas directrices.

Fig. (2.1): Cuadriltero de Ackermann.

Est diseado de tal forma que las lneas rectas imaginarias, perpendiculares a
todas las ruedas del vehculo y que pasan por su centro, convergen en un nico
centro instantneo de rotacin (o), de forma que las ruedas del vehculo realizan
un movimiento de rodadura puro al negociar una curva.

Fig. (2.2): Centro instantneo de rotacin.

Si no se tuviera este sistema, las ruedas deslizaran y no trabajaran como se


desea, de forma que supondra un peligro para la seguridad de los ocupantes.
Adems habra que aadir otro inconveniente ms, el desgaste irregular de los
neumticos, acortando as su vida til y elevando pues, los costes de
mantenimiento del vehculo.

18

D.LATERAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Una vez definido el mecanismo de Ackermann, y estudiadas sus caractersticas


mecnicas, se va a detallar cmo se realiza su diseo y cules son los parmetros
principales involucrados en l.
Para ver todo con ms precisin y claridad, se muestra un modelo del vehculo y
los parmetros intervinientes:

Fig. (2.3): Condicin geomtrica del mecanismo de Ackermann.

Los ngulos que giran cada una de las ruedas directrices vienen dados por las
siguientes relaciones:
=

Ec. (2.1)

Ec. (2.2)

Una vez que se conocen los ngulos lo que interesa es relacionarlos para poder
disear el mecanismo correctamente:

19

Ec. (2.3)

D.LATERAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

As pues, con el mecanismo de Ackermann se mantienen giradas las ruedas segn


la relacin que impone la ecuacin anterior, en funcin de la batalla (L) y de la va
del vehculo (V).
Con todo lo anterior y con las longitudes de las manivelas de cada rueda y de la
biela que une ambas, el cuadriltero de Ackermann quedar completamente
definido.

2.1.2 ngulo de deriva.


Cuando se dispone de neumticos de goma, como sucede en los vehculos,
aparecer un cierto ngulo de divergencia respecto a la direccin diametral, sin
que por ello el movimiento de la rueda deje de ser de rodadura puro, es decir, sin
que aparezca deslizamiento. Este ngulo descrito es el llamado ngulo de deriva
del neumtico.
Este ngulo aparece debido a la fuerza lateral que soporta el neumtico al
negociar una curva.

Fig. (2.4): ngulo de deriva.

Para relacionar el ngulo de deriva () con la fuerza lateral (Fy) se presentan las
siguientes relaciones:
=

Ec. (2.4)

Ec. (2.5)

Ambas expresiones son iguales, la diferencia reside en que los sub-ndices


empleados se refieren a las ruedas delanteras (f), o a las traseras(r).
Como se aprecia, la fuerza lateral se relaciona con el ngulo de deriva a travs de
una constante (C), la rigidez a deriva. A su vez, la rigidez a deriva, depende de

20

D.LATERAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

una serie de parmetros como son las fuerzas de aceleracin y frenado, la carga,
caractersticas del neumtico,,etc..
Se muestra ahora la relacin entre la fuerza lateral y el ngulo de deriva de forma
grfica:

Fig. (2.5): Rigidez a deriva.

Por ltimo, y para terminar con este apartado, hay que destacar el movimiento del
centro instantneo de rotacin hacia delante por efecto de la deriva de los
neumticos.

Fig. (2.6): Desplazamiento de centro instantneo de rotacin debido a la deriva.

21

D.LATERAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

2.1.3 Modelo: Modelo de bicicleta.


El modelo de la bicicleta va a ser la herramienta de apoyo para el estudio del
comportamiento en curva del vehculo.
Dicho modelo se emplea para estudiar cmo influye el ngulo de deriva a la hora
de trazar una trayectoria curva con el vehculo.
Se denomina as porque el modelo concentra la rigidez a deriva del eje delantero y
la rigidez a deriva del trasero, de forma que se pasa de un sistema con cuatro
ruedas (como es el vehculo) a uno de dos ruedas (como es la bicicleta). Se puede
apreciar todo esto con detalle en la siguiente figura:

Fig. (2.7): Modelo de la bicicleta.

Una vez introducidas las caractersticas del modelo, se estudiar con detalle el
comportamiento en curva del vehculo. Para ello se va a dedicar un apartado
especfico en este captulo, el apartado siguiente.

2.1.4 Comportamiento en curva del vehculo.


Para realizar un correcto desarrollo de las relaciones entre los parmetros
intervinientes en el comportamiento en curva se utilizar el siguiente grfico:

22

D.LATERAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Fig. (2.8): Relacin entre ngulos y parmetros del vehculo.

En primer lugar, destacar que se supone que el radio de la curva que se va a


negociar es lo suficientemente grande comparado con las dimensiones
caractersticas del vehculo (batalla y va), como para emplear aproximaciones de
ngulos pequeos.
En segundo lugar, se observa, con una simple mirada al grfico anterior, que se
relacionan los ngulos de deriva y el ngulo de giro de las ruedas con la batalla del
vehculo y el radio de la curva de la siguiente forma:
+ =

Ec. (2.6)

Adems de los parmetros anteriores, el ngulo de giro de las ruedas depender


de las fuerzas laterales que actan sobre las ruedas, ya que dichas fuerzas
condicionan el valor de los ngulos de deriva:
2

=
=

Ec. (2.7)
Ec. (2.8)

Teniendo en cuenta en equilibrio de fuerzas verticales y suponiendo condiciones


estacionarias se tiene que:
=
=

23

Ec. (2.9)
Ec. (2.10)

D.LATERAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

En el apartado 2.1.2 se vio como se relacionan las fuerza laterales con el ngulo
de deriva a travs del parmetro conocido como rigidez a deriva: Ec. (2.4) y Ec.
(2.5)
Trabajando con todas las ecuaciones anteriores se obtiene la ecuacin final del
problema:

= +

donde el trmino

Ec. (2.11)

es igual al coeficiente de subvirador.

Ec. (2.12)

En funcin del valor que toma el coeficiente de subvirador, se desarrollan tres tipos
de comportamiento en el vehculo:
Subvirador (U>0):
En este caso el ngulo de deriva de los neumticos delanteros es superior al
de los traseros. Si se aumenta la velocidad, el vehculo tender a salirse de
la carretera por la tangente de la curva que est negociando y ser
necesario aumentar el ngulo de giro para que esto no suceda.

Fig. (2.9): Vehculo subvirador.

Sobrevirador (U<0):
Ahora, al contrario que en el vehculo subvirador, el ngulo de deriva de los
neumticos delanteros es inferior al de los traseros. Si se aumenta la
velocidad, el vehculo tender a salirse de la carretera por el interior de la

24

D.LATERAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

curva que est negociando y ser necesario disminuir el ngulo de giro de


las ruedas para que esto no suceda.
En este caso aparece una velocidad, la velocidad crtica, a la cual el vehculo
mantiene la trayectoria curva necesaria sin girar el volante:

Ec. (2.13)

Fig. (2.10): Vehculo sobrevirador.

Virador neutro (U=0):


Se presenta ahora una situacin intermedia a las dos anteriores. Un vehculo
virador neutro tendr el mismo ngulo de deriva en los neumticos traseros
que en los delanteros. Aunque se aumente la velocidad del vehculo en la
curva no ser necesario cambiar el ngulo de giro de las ruedas para el
correcto trazado de sta. En este caso el ngulo requerido para tomar la
curva ser:

25

Ec. (2.14)

D.LATERAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Fig. (2.11): Vehculo virador neutro.

Para terminar el estudio del comportamiento en curva, se realiza una grfica que
representa el ngulo de giro necesario en funcin de la velocidad, para cada uno
de los tipos de vehculo:

Fig. (2.12): ngulo de giro en funcin de la velocidad.

26

D.LATERAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

2.2 Interfaz grfica.


2.2.1 Datos de entrada.
Los datos de entrada de esta parte del programa son aquellos necesarios para
calcular el comportamiento en curva del vehculo.
Los datos estn divididos en dos cuadros independientes:
Datos del vehculo:
o Masa: masa del automvil expresada en kg.
o Batalla: este dato se toma a travs de tres entradas.
L= batalla, propiamente dicha, del vehculo. Es la distancia entre
el eje delantero y el eje trasero en metros.
a= distancia entre el eje delantero y el c.d.g. del automvil.
b= distancia entre el eje trasero y el c.d.g. del automvil.
Hay que tener en cuenta que se debe cumplir: a+b=L. Si esto no
ocurre el programa mostrar un mensaje de error.
o Rigidez a deriva: como se estudi en el apartado de fundamentos
tericos, es el parmetro que relaciona la fuerza lateral con el ngulo
de deriva de los neumticos. Tendr dos entradas, una para los
neumticos delanteros (Cf), y otra para los traseros (Cr). Sus
unidades de medida sern N/rad.
o Velocidad: velocidad a la que circula el vehculo en km/h.
o Relacin de desmultiplicacin: parmetro que establece la relacin
entre el ngulo de giro del volante y el ngulo de giro de las ruedas.
Su valor suele estar comprendido entre 15 20.
Datos de la curva:
o Radio: radio de la curva que est negociando el vehculo. Su
dimensin vendr dada en metros.

27

D.LATERAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

2.2.2 Parmetros de salida.


Son los datos obtenidos tras la resolucin del problema. Los parmetros de salida
de la dinmica lateral pueden ser numricos o grficos.
Numricos:
o ngulo de giro de las ruedas: ngulo que giran las ruedas del vehculo
al trazar la curva, expresado en radianes.
o ngulo de giro del volante: ngulo a girar por el conductor al negociar
la curva, tambin expresado en radianes.
o Coeficiente de subvirador: ha sido estudiado con detalle en los
fundamentos tericos, por lo que no se estima necesario realizar
ningn comentario.
Grficos:
Se mostrarn dos imgenes de salida, una reproduccin de la trazada que
realizar el vehculo al recorrer la curva y un grfico que representa el ngulo
de giro del volante necesario para tomar correctamente la curva en funcin
de la velocidad a la que se desplaza el vehculo.
Ahora se muestra una imagen del programa donde se observa con detalle la
presentacin de la interfaz grfica para la dinmica lateral:

Datos de entrada

Parmetros de salida

Fig. (2.13): Interfaz grfica: dinmica lateral.

28

D.LATERAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

2.2.3 Operacin y funcionamiento.


En primer lugar se comienza ejecutando el programa. Para ello se abrir el archivo
simulacin. Aparecer en pantalla la siguiente imagen:

Fig. (2.14): Interfaz grfica: pantalla principal.

Una vez cargada la pantalla, se dispone de cuatro botones: uno para cada una de
las tres dinmicas del automvil y un cuarto botn para salir del programa. Al hacer
clic sobre el botn de dinmica lateral y se abrir una nueva ventana dedicada a la
simulacin de dicha dinmica:

Fig. (2.15): Interfaz grfica: pantalla dinmica lateral.

29

D.LATERAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Para comenzar los clculos se introducirn los datos de entrada que pide el
programa y que han sido detallados en apartados anteriores. Para desplazarse de
una casilla a otra de los datos de entrada se puede emplear el tabulador del
teclado.
Hay que prestar especial cuidado a la hora de introducir estos datos, ya que slo
pueden introducirse caracteres numricos y, si por fallo de la persona encargada
de esta funcin se introdujese alguna letra o carcter especial (menos el separador
decimal que es el punto), saltar un mensaje de error y se borrar
automticamente la casilla sobre la que trabajbamos. Se detalla lo explicado en
una imagen con ms detalle:

Fig. (2.16): Interfaz grfica: dinmica lateral, error por carcter no numrico.

Como se observa en la imagen, el error se ha producido al introducir el valor de


rigidez a deriva (Cf). Automticamente aparece la ventana de informacin y se ha
limpiado la casilla.
De igual modo, se abrir otro mensaje de error si, al introducir los datos de la
batalla del vehculo (L, a y b), no se cumple la ecuacin L=a+b. En este caso, al
producirse el error se borraran los valores introducidos en cada una de las tres
casillas citadas:

30

D.LATERAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Fig. (2.17): Interfaz grfica: dinmica lateral, error por valor de la batalla.

As pues, una vez introducido los datos se est en condiciones de poder realizar
los clculos. Para ello se pulsa el botn CALCULAR situado en la parte inferior
central de la pantalla.
Al presionar dicho botn el programa realiza las siguientes acciones:
Lectura y almacenamiento de cada uno de los parmetros de entrada.
Clculos numricos directos asociados a los datos de entrada:
=

9.81

9.81

=
=

1000/3600
+

Una vez realizado los clculos (U, , ), se muestran por pantalla los
parmetros de salida en sus casillas correspondientes.
31

D.LATERAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Obtencin de los grficos:


Los grficos e imgenes a mostrar dependen del valor del coeficiente de
subvirador, por lo que se ha realizado la programacin de las imgenes de
salida de la interfaz a travs de la sentencia if.
Para cada uno de los tres casos (U=0, U<0 y U>0), hay almacenada una
imagen que se mostrar en la zona superior derecha de la pantalla. Adems,
y en el caso de que el vehculo sea sobrevirador (U<0) aparecer en el pie
de la imagen la velocidad crtica, que ha sido calculada por la frmula:
=

Fig. (2.18): Interfaz grfica: dinmica lateral, imgenes mostradas en funcin del coeficiente
de subvirador.

En la zona inferior derecha se representar la grfica del ngulo de giro del


volante en funcin de la velocidad del vehculo. Para realizar la
representacin se emplea la funcin plot:
Definimos el eje x x=0:10:Velocidad+20;
Definimos el eje y y=((L/R)+U*(x*1000/3600).^2/(9.81*R))*r.desmult.
Dibujamos la grfica plot(x,y)

32

D.LATERAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Fig. (2.19): Interfaz grfica: dinmica lateral, distintas grficas en funcin del coeficiente de
subvirador.

Una vez realizados los clculos se puede cambiar algn dato de entrada
pinchando con el ratn sobre l y, despus de borrar lo anteriormente introducido,
escribir el nuevo valor. Si se vuelve a pulsar CALCULAR, se repetirn los
clculos con el/los nuevo/s dato/s y se obtendr/n el/los nuevo/s resultado/s.
Si por el contrario se desea cambiar casi la totalidad de los datos introducidos, o
empezar de nuevo por algn error a la hora de escribirlos, no es necesario salir del
programa y volver a empezar, o ir uno a uno reescribiendo los datos de entrada, ya
que disponemos del botn RESET que limpia en la pantalla tanto los datos de
entrada, como parmetros e imgenes y grficos de salida.
Para finalizar y salir del programa, adems del sistema normal utilizado en
cualquier programa de Windows (hacer clic sobre el aspa de la esquina superior
derecha), se dispone del botn SALIR que cerrar la ventana.

33

D.LATERAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

2.2.4 Ejemplo prctico.


Se desea resolver el siguiente ejemplo:
Un automvil que presenta las siguientes caractersticas:
- Masa: 900 kg
- Batalla:
a = 1.2 m
b = 1.3 m
- Cf = 140000 N/rad
- Cr = 50000 N/rad
- Velocidad: 100 km/h
- Relacin de desmultiplicacin: 18
va a negociar una curva que tiene 100 m de radio.
A) Simular el comportamiento en curva del vehculo.
B) Intercambiar los valores de rigidez a deriva de las ruedas el eje trasero con las
del delantero y simular el nuevo sistema.
C) Cambiar los siguientes datos del enunciado:
- Batalla:
a = 1.3 m
- Cf = 90000 N/rad
- Cr = 90000 N/rad
Simular otra vez la dinmica lateral y responder a la siguiente pregunta:
Tiene el vehculo un comportamiento de virador neutro?

SOLUCIN DEL EJEMPLO PROPUESTO

- APARTADO A:
Introduciendo los datos de entrada en el programa se obtiene la siguiente pantalla:

34

D.LATERAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Fig. (2.20): Interfaz grfica: ejemplo, apartado A.

Una vez revisados los datos se proceder a la simulacin. Pinchando en el botn


de calcular se consiguen los resultados siguientes:

Fig. (2.21): Interfaz grfica: ejemplo, apartado A.

35

D.LATERAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Observando el resultado de la simulacin se aprecia que el vehculo ser


sobrevirador.
Los parmetros de salida son:
- ngulo de giro de las ruedas: -0.015873 rad.
- ngulo de giro del volante: -0.28571 rad.
- Coeficiente de subvirador: -0.051965
- Velocidad crtica: 78.2081 km/h.
Para pasar al apartado B, bien se cambian en pantalla los datos de rigidez a deriva
o bien se pulsa reset y se introducen de nuevo todos los datos.

- APARTADO B:

Una vez cambiados los datos de entrada se presiona de nuevamente CALCULAR


y se obtiene:

Fig. (2.22): Interfaz grfica: ejemplo, apartado B.

36

D.LATERAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

El resultado de la simulacin ha cambiado por completo, ahora el vehculo es


subvirador.
Los parmetros de salida son:
- ngulo de giro de las ruedas: 0.073413 rad.
- ngulo de giro del volante: 1.3214 rad.
- Coeficiente de subvirador: 0.061551

- APARTADO C:
Para finalizar con el ejemplo se introducen los nuevos datos y se comprobar si es
cierto que el vehculo ser o no virador neutro:

Fig. (2.23): Interfaz grfica: ejemplo, apartado C.

Queda as comprobado que, efectivamente, tal y como se poda prever, el vehculo


es virador neutro. Los resultados que se han obtenido son:
- ngulo de giro de las ruedas: 0.026 rad.
- ngulo de giro del volante: 0.468 rad.
- Coeficiente de subvirador: 0

37

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Captulo III: Dinmica Longitudinal.

38

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

3 DINMICA LONGITUDINAL.
3.1 Fundamentos tericos.
3.1.1 Curva de par. Curva de potencia.
La curva de par es la representacin del par motor del vehculo en funcin de la
velocidad de rotacin del motor. Igualmente la curva de potencia representa la
potencia desarrollada segn el rgimen de velocidades de rotacin.
La potencia en cada momento es igual al par multiplicado por la velocidad angular
a la que gira el motor (P=T*w). As pues, conociendo la curva de par de un
vehculo se conocer la de potencia o viceversa.
En cuanto a las curvas de potencia y par ideales para un vehculo, lo deseado
sera que la potencia fuera constante para cualquier velocidad y que el par tuviera
valores elevados a pequeas velocidades y valores bajos a grandes velocidades,
de forma que toda la potencia se empleara para subir elevadas pendientes a baja
velocidad o para vencer las fuerzas de rozamiento y aerodinmica a alta velocidad.

Fig. (3.1): Curvas de potencia y par ideales.

Estas condiciones se cumplen, casi al 100%, en motores de vapor y en ciertos


motores elctricos. As pues, lo ideal, refirindose a trminos de potencia, sera
emplear alguno de estos dos tipos de motores. Pero no todo son ventajas, aparece
el inconveniente del elevado peso de dichos motores para el rango de potencias
necesarias en un vehculo, y el de obtener o almacenar energa elctrica y, generar
y trabajar con vapor. Por todo esto se emplean motores de combustin interna en
vehculos.
A continuacin se va a realizar un estudio del funcionamiento de los MCI y de
cmo obtener las curvas de par y de potencia en ellos.

39

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Estos motores realizan un ciclo termodinmico para producir energa. En los


vehculos la mayora de los motores son de cuatro tiempos, por lo que el pistn del
motor recorrer dos ciclos, cuyas etapas o tiempos son:
Admisin: el pistn baja y se abre la vlvula de admisin para que entre aire
(motores diesel) o una mezcla de aire y combustible (motor gasolina).
Compresin: se cierra la vlvula de admisin y al subir el pistn comprime el
aire o la mezcla segn sea un motor u otro.
Expansin: una vez comprimida la mezcla se produce la explosin y
expansin de la mezcla, bien por la chispa de un electrodo (buja) en
motores de ciclo de Otto, o bien por la inyeccin de combustible a presin en
motores diesel. La expansin de la mezcla (gases) har que el pistn baje.
Escape: al subir nuevamente el pistn arrastra los gases de la combustin
que salen del cilindro a travs de la vlvula de escape que se encontrar
abierta.
En la siguiente figura se representa un grfico que muestra el ciclo que realiza el
motor:

Fig. (3.2): Ciclo MCI.

La potencia obtenida por el MCI puede calcularse a partir del diagrama de


presiones de un cilindro durante el ciclo que describe.
La fuerza (F) que acta sobre el pistn ser:
=

2
4

= .
= .

Calculada la fuerza, podr obtenerse el trabajo (W) como:

40

Ec. (3.1)

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

= =

2
4

Ec. (3.2)

Como el motor de los vehculos suele ser de cuatro tiempos habr una carrera
efectiva del pistn cada dos vueltas, a diferencia del de dos tiempos que slo
presentan una. Entonces se define un factor (f) que introduzca en la expresin
anterior las carreras efectivas por vuelta del pistn. En este caso f=1/2.
= =

2
4

Ec. (3.3)

Calculado el trabajo se obtiene la potencia como el producto de ste por la


velocidad angular de rotacin ():
= =

2
4

Ec. (3.4)

Teniendo en cuenta el nmero de cilindros del motor (N):


=

2
4

Ec. (3.5)

Observando la ecuacin anterior se pueden hacer algunas simplificaciones, ya que


el volumen o cilindrada del motor ser:
=

2
4

Ec. (3.6)

As se llega a obtener la potencia y el par motor como:


=

Ec. (3.7)

Ec. (3.8)

= .
= .

Nota: todas las formulas anteriores se utilizaran con unidades del S.I.
Otro factor a tener en cuenta es que hay que limitar la velocidad lineal media de los
pistones para que no se produzca un desgaste excesivo de las camisas y de los
segmentos. Suele emplearse unos valores entre 5 m/s y 12 m/s.

41

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Con todo lo anterior, si se representan las grficas de potencia y de par de los


motores de combustin interna se aprecia que, en absoluto, son constantes como
sera deseable:

Fig. (3.3): Curva de par (rojo) y curva de potencia (azul) de un MCI.

Entonces, se llega a la siguiente situacin: por una parte se buscan motores que
tenga una curva de potencia ms o menos constante (lineal) y por otra parte se
emplean MCI que no cumplen estas caractersticas. As pues, cmo puede
corregirse dicha situacin?
Para resolver este problema entran en juego las transmisiones con velocidad
variable, es decir, las distintas relaciones de transmisin del vehculo, tema que
ser objeto de estudio en el apartado 3.1.3 de este captulo.
Si en el MCI se despreciaran los efectos dinmicos de llenado del cilindro y las
distorsiones de carburacin tendramos una curva de par constante.

3.1.2 Equilibrio dinmico longitudinal.


En este apartado se van a estudiar cules son las fuerzas resistivas y cules son
las fuerzas tractoras.
Como definicin de fuerzas resistivas se cita: es todo tipo de fuerza que se opone
al movimiento del automvil. En cambio, las fuerzas tractoras son aquellas que
hacen posible que el vehculo venza las fuerzas resistivas y pueda comenzar y
mantener su movimiento.
A continuacin se desarrollaran las expresiones matemticas que definen cada
una de las fuerzas definidas anteriormente. En primer lugar se representa como
actan dichas fuerzas y los parmetros de los que dependen.

42

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Fig. (3.4): Fuerzas que intervienen en el movimiento de un vehculo.

- Fuerza de resistencia aerodinmica (Fa).


Fuerzas resistivas

- Fuerza de resistencia a la rodadura (Fr).


- Fuerza debida a la pendiente a remontar (Fp).
- Fuerza de inercia (Fi).

Fuerzas tractoras

Fuerza motriz (Fm).

Se define cada una de ellas como:


Fuerza de resistencia aerodinmica (Fa): es la fuerza que sufre el vehculo al
moverse en contacto con el aire.
=

1
2

=
= .
= .
= .

43

Ec. (3.9)

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Fuerza de resistencia a la rodadura (Fr): fuerza que aparece por el contacto


del vehculo a travs de los neumticos con la superficie de rodadura.
=

Ec. (3.10)

= .
= .
= .
= .

Fuerza debida a la pendiente a remontar (Fp): al encontrarse el vehculo en


un plano inclinado, una parte de su masa gravita en sentido contrario al de
su marcha, provocando una fuerza resistiva.
=

Ec. (3.11)

= .
= .
= .

Para pequeas pendientes se puede realizar la siguiente aproximacin:


Ec. (3.12)

= .

As pues, la fuerza debida a la pendiente a remontar ser:


= = =

Ec. (3.13)

= .
= .
= .
= .

Fuerza de inercia (Fi): fuerza de origen cinemtico que acta en sentido


contrario a la aceleracin del vehculo.
= =

44

Ec. (3.14)

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

= .
= .
= .

Ahora bien, para que se cumpla el equilibrio dinmico longitudinal, la suma de


todas estas fuerzas debe ser igual a la suma de las fuerzas tractoras:
=

+ + + = =

Ec. (3.15)

Ec. (3.16)

Esta ecuacin (3.16) se denomina ecuacin de equilibrio de fuerzas. A partir de


ella se obtiene la ecuacin de equilibrio de potencias:

= =

Ec. (3.17)

= .
= .
= .
= .

= = + + + = + + + 3
2

Ec. (3.18)

La potencia disponible para acelerar, la potencia cintica, ser:

= + 3
2

Ec. (3.19)

3.1.3 Relaciones de transmisin.


En un vehculo, se denomina relacin de transmisin al cociente entre la velocidad
de rotacin del motor y la de las ruedas del vehculo:
=

45

Ec. (3.20)

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Las relaciones de transmisin proporcionan las siguientes prestaciones:


Velocidad mxima en llano: clculo de la relacin de transmisin ms larga
( ):
Hiptesis de clculo:
- Se supone que, como el vehculo se encuentra a la velocidad
mxima, la aceleracin es nula:
= 0

Ec. (3.21)

- El vehculo circular por una carretera completamente llana, es decir,


no remontar pendiente alguna:
=0

Ec. (3.22)

- La velocidad mxima v* se alcanzar a la potencia motriz mxima


(P*):
1

= +
2

= =

Ec. (3.23)

Ec. (3.24)

Rampa o pendiente mxima: clculo de la relacin de transmisin ms corta


(1 ):
Hiptesis de clculo:
- Como al remontar la pendiente mxima la velocidad ser reducida se
desprecia la fuerza aerodinmica:
= 0

Ec. (3.25)

- La velocidad es constante, por lo que no se puede acelerar ms el


vehculo:
= 0

Ec. (3.26)

- La fuerza de traccin equilibra a la de pendiente y resistencia a


rodadura:
= + = ( + )

46

Ec. (3.27)

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Equilibrio entre el par motor y el par en las ruedas:


= = =

Ec. (3.28)

Haciendo que el par motor sea el mximo disponible:


= =

1 =

1 =

( +)

( + )

Ec. (3.29)

Ec. (3.30)

Ec. (3.31)

Aceleracin mxima (normalmente de 0-100 km/h).


Las prestaciones de un vehculo en aceleracin se determinan a partir de la
curva de par disponible. Para cada velocidad de desplazamiento del
automvil, con una determinada relacin de transmisin, existir un par
disponible para acelerar, que ser:
=

Ec. (3.32)

A partir del par disponible, se puede evaluar el esfuerzo tractor mximo que
permite acelerar el vehculo siempre que no se supere la adherencia entre el
neumtico y la superficie de rodadura.
=

Ec. (3.33)

La aceleracin del vehculo afecta tanto a la velocidad de traslacin del


conjunto de sus masas como el aumento de las velocidades de rotacin de
las masas giratorias. Este efecto se evala por el factor de masa
equivalentes, que mayora la masa real del vehculo:

47

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

= 1 +

I 2

1.04 + 0.0025 2

Ec. (3.34)

RELACIONES DE TRANSMISIN
ALTAS

BAJAS

PRIMERA

SEGUNDA

TURISMO GRANDE

1.09

1.3

1.14

TURISMO PEQUEO

1.11

2.4

1.5

1.20

Fig. (3.5): Valores promediados del factor de masas.

As pues, ya se podr calcular la aceleracin mxima:


= =

Ec. (3.35)

Para una relacin determinada se puede obtener el tiempo necesario para


acelerar entre dos velocidades como:
=

()

1,2 =

2
1 ()

Ec. (3.36)

De igual modo se calcula el espacio recorrido en ese tiempo como:


= =

()

1,2 =

2
1 ()

Ec. (3.37)

Una vez estudiadas las prestaciones que se obtienen con las relaciones de
transmisin vamos a ver cmo calcular el resto de relaciones de un vehculo.
Uno de los criterios ms empleados es partir del rango de velocidades en el cual
va a trabajar el motor (hay que tener en cuenta que dentro de dicho rango de
velocidades deben encontrarse el par motor y la potencia motriz mximas).
Como criterio de diseo hay que suponer que la velocidad de las ruedas al final de
la marcha i-1 debe coincidir con la velocidad de las ruedas al inicio de la marcha
i. Si no se cumpliera esta condicin de diseo, el coche tendra un cambio brusco
de velocidad al cambiar de una marcha a otra. Desarrollando lo expuesto:
2,(1)

= 1,

1
1

2 =

48

Ec. (3.38)

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

De esta forma, la expresin que relaciona las relaciones de transmisin i-1 e i


es la progresin geomtrica:
1 =

Ec. (3.39)

Ahora se representa en una grfica como varan las velocidades segn las
relaciones de transmisin:

Fig. (3.6): Velocidad en funcin de las relaciones de transmisin.

3.1.4 Limitacin de esfuerzos tractores por la adherencia.


La adherencia es el principal problema que presenta un automvil a la hora de
remontar una pendiente.
La mxima pendiente que podr remontar se dar, como ya se vio en el estudio las
prestaciones, en condiciones de par mximo y con la relacin de transmisin ms
corta.

49

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Para conocer si un vehculo puede o no remontar una pendiente hay que comparar
la fuerza de traccin que posee ste con la fuerza de rozamiento entre los
neumticos y la superficie de rodadura. As se tiene que:
Si la fuerza de traccin es mayor que la fuerza de rozamiento disponible
las ruedas motrices del vehculo patinaran y no ser capaz de remontar la
pendiente.
> =

Ec. (3.40)

Si la fuerza de traccin es menor que la fuerza de rozamiento disponible


las ruedas motrices no patinan y tendremos la adherencia garantizada,
pudiendo el vehculo remontar la pendiente.
< =

Ec. (3.41)

donde es la carga normal en el eje motriz y es el coeficiente de


adherencia.
El valor del coeficiente de adherencia depender de que exista deslizamiento o
pseudo-deslizamiento. Se define el pseudo-deslizamiento como la diferencia entre
la distancia recorrida en una vuelta y la distancia recorrida por la banda de
rodadura:
=

Ec. (3.42)

Fig. (3.7): Coeficiente de adherencia y peudo-deslizamiento.

Al observar la grfica y la expresin anterior se obtienen las siguientes


conclusiones:
Si wR=v

Si v=0 y w0

s=0
s=1

libre.
patina.

50

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Los valores mximos del coeficiente de pseudo-deslizamiento estarn en torno al


10-30 %.
La fuerza de rozamiento, como ya se vio anteriormente, depender del eje motriz.
Por ello hay que estudiar su valor dependiendo del tipo de traccin que tenga el
vehculo:

Traccin delantera:

=
=

Ec. (3.43)

= 0

( + + ) + = 0

= ( + + ) +

Ec. (3.44)

Ec. (3.45)

= = + + + + + =

= ( ) +

Ec. (3.47)

= = (
) +

Ec. (3.46)

( +)

Ec. (3.48)

Traccin trasera:

= ( ) +

51

Ec. (3.49)

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

( )

Ec. (3.50)

Traccin total o a las cuatro ruedas:

4
=

52

Ec. (3.48)

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

3.2 Interfaz grfica.


3.2.1 Datos de entrada.
Los datos de entrada de la interfaz grfica para el estudio de la dinmica
longitudinal de un vehculo son los siguientes:
Curva de par y curva de potencia:
Es el dato ms relevante de la interfaz. Se introduce la curva de par por
medio de una tabla de puntos almacenada en un archivo de datos
(curvapar.m). La tabla consta de dos columnas, la primera para las
velocidades de rotacin del motor en rpm y la segunda para el par en Nm. La
curva de potencia se obtiene por la relacin de potencia y par a travs de la
velocidad angular de rotacin del motor.
Para trabajar con la interfaz hay que cargar el archivo curvapar en el
Workspace de Matlab.

Fig. (3.8): Workspace de Matlab.

El array introducido es el siguiente:

Fig. (3.9): Array de la curva de par.

53

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

El inconveniente que presenta este dato de entrada es que si se quiere


cambiar no se puede hacer desde el programa. Habra que modificar el array
en el Workspace y luego arrancar la interfaz con los nuevos datos de entrada
para la curva de par.
Otra opcin hubiese sido introducir la curva de potencia y, a partir de ella,
obtener la curva de par. El proceso es completamente igual que el descrito.

Datos del vehculo:


o Masa del automvil expresada en kg.
o rea frontal: proyeccin frontal del rea del vehculo expresada en m 2.
o Distribucin de pesos: % del peso del vehculo que incide sobre el eje
delantero y % del peso que incide sobre el eje trasero (la suma de
ambos porcentajes tiene que ser el 100%).
o Batalla: es la distancia entre el eje delantero y el eje trasero del
vehculo en metros.
o Altura del c.d.g del automvil en metros.
o Dimetro de las ruedas en metros.
o Reduccin de velocidad en el diferencial.
o Rendimiento de la transmisin en %.
o Tipo de traccin: se mostrar un men desplegable donde elegiremos
el tipo de traccin del vehculo (delantera, trasera y a las 4 ruedas).

Parmetros y coeficientes:
o Pendiente: pendiente que va a remontar el vehculo en %. La
pendiente ser la calculada como metros verticales que ha subido el
vehculo por cada 100 metros de rampa. Por ejemplo, una pendiente
del 30 % ser:
100

54

30

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

o Densidad del aire (kg/m3): densidad del aire. Aunque su valor depende
de la presin y de la temperatura se suele emplear 1.22 kg/m 3.
o Coeficiente de resistencia aerodinmica (Cx): expresa la resistencia
que posee el vehculo al circular en contacto con el aire por razn de
su forma. En los turismos suele tener un valor que est entre 0.25 y
0.40, aunque en algunos turismos experimentales o prototipos baja de
0.20. Este dato es necesario para calcular la fuerza de resistencia
aerodinmica.
o Coeficiente de resistencia a la rodadura (): su valor oscila,
dependiendo de la naturaleza del vehculo, entre 0.009 y 0.014 para
turismos y entre 0.03 y 0.05 para vehculos industriales. Es necesario
para calcular la fuerza de resistencia a la rodadura.
o Coeficiente de adherencia (): mide la oposicin que presentan las
superficies de contacto entre dos cuerpos al deslizar uno sobre otro.
Dicho coeficiente es caracterstico de cada par de materiales y no de
uno en s. Depende de diversos factores como temperatura, velocidad
relativa entre superficies, acabado de las superficies,, etc. Los
valores caractersticos del coeficiente para la interfase neumtico
carretera sern:

Fig. (3.10): Coeficiente de adherencia.

3.2.2 Parmetros de salida.


En cuanto a los parmetros de salida se dispone de los siguientes:

Prestaciones del vehculo:


o

Velocidad mxima en llano (km/h): velocidad que alcanza el vehculo


en llano a la mxima potencia.

55

D.LONGITUDINAL
o

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Pendiente mxima remontable (%): pendiente que remonta el vehculo


sin perder la adherencia.

o Aceleracin mxima para cada relacin de transmisin (m/s 2).

Relaciones de transmisin: relaciones de transmisin entre motor y rueda y


motor y transmisin calculadas en progresin geomtrica.

Curva de par y curva de potencia: aunque son datos de entrada, se incluyen


aqu tambin porque al pichar sobre el botn Curva de par o sobre Curva
de potencia se representar grficamente en pantalla.

Fig. (3.11): Curva de potencia.

56

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Fig. (3.12): Curva de par.

Adems de la representacin se obtienen los siguientes valores:


o Potencia mxima (w).
o Velocidad de rotacin del motor a la mxima potencia (rpm).
o Par mximo (Nm).
o Velocidad de rotacin del motor a par mximo (rpm).
Diagrama de potencia: al pulsar el botn DIAGRAMA DE POTENCIA se
realiza una representacin de la potencia que desarrolla el motor a cada una
de las relaciones de transmisin. Adems se calcula tambin la curva de
carga del vehculo.
Diagrama de traccin: pinchando sobre el botn DIAGRAMA DE
TRACCIN se representa el diagrama de traccin del vehculo y la fuerza
resistiva para diversas pendientes.

57

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Todas las curvas y diagramas anteriores se representarn en la esquina superior


derecha de la pantalla.
A continuacin se muestra una captura de la ventana de la interfaz grfica para la
dinmica longitudinal:

Datos de entrada

Parmetros de salida

Fig. (3.13): Interfaz grfica: dinmica longitudinal.

3.2.3 Operacin y funcionamiento.


Al igual que en el caso de la dinmica lateral, hay que comenzar por ejecutar el
programa. Para ello se abre el archivo simulacin. Aparecer en pantalla la
siguiente imagen:

58

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Fig. (3.14): Interfaz grfica: pantalla principal.

Al hacer clic sobre el botn de dinmica longitudinal se abrir una nueva ventana
dedicada a la simulacin de dicha dinmica:

Fig. (3.15): Interfaz grfica: pantalla dinmica longitudinal.

Hay que comenzar la simulacin introduciendo los datos de entrada citados en el


aparatado 3.2.1. Para mayor comodidad, el usuario podr desplazarse de una
casilla a otra de los datos de entrada con el tabulador del teclado.

59

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Todos los datos de entrada de la interfaz son valores numricos, (exceptuando el


men desplegable para elegir el tipo de traccin) por lo que, al igual que en la
dinmica lateral, si se introduce un carcter no numrico en una de las casillas, se
mostrar un mensaje de error y se eliminar el valor errneo introducido.

Fig. (3.16): Interfaz grfica: dinmica longitudinal, error por carcter no numrico.

Adems del mensaje de error anterior, si los valores de la distribucin de los pesos
delantero y trasero no suman el 100 %, aparecer una nueva ventana con mensaje
de error indicando que la suma de los porcentajes de peso que recaen sobre los
ejes debe suponer un 100 %.

Fig. (3.17): Interfaz grfica: dinmica longitudinal, error por valor de la distribucin de pesos.

Del mismo modo, si al escribir los valores del rendimiento de la transmisin o de la


pendiente se supera el 100 %, aparecer en pantalla otro mensaje de error que
indique que el porcentaje debe ser < 100%.

Fig. (3.18): Interfaz grfica: dinmica longitudinal, error por % superior a 100%.

60

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Por ltimo hay tener presente que los coeficientes de adherencia, rodadura y
resistencia aerodinmica deben tener valor inferior a la unidad. Si esto no sucede
se mostrar un nuevo mensaje de error advirtiendo de los fallos.

Fig. (3.19): Interfaz grfica: dinmica longitudinal, error por valor de coeficientes superior a la
unidad.

Despus de introducir todos los datos de entrada por pantalla y de subsanar los
posibles errores en ellos, se puede comenzar a realizar los clculos.
El primer paso es presionar el botn CURVA DE POTENCIA. Con ello se carga
este dato y se realiza su representacin, obteniendo adems los valores de
potencia mxima y velocidad angular a la que tiene lugar.
El procedimiento empleado en la programacin para representar la curva es el
siguiente:
Cargar el array de datos global curvapar
Definir el eje x primera columna del array
Definir el eje y segunda columna del array multiplicada por la primera
(porque los datos son de par, y al multiplicar el par por la velocidad angular
obtenemos la potencia)
Dibujar la grfica se emplea el comando polyfit con un grado de regresin
de tres para obtener la funcin, y con el comando polyval se obtiene la curva
para realizar la representacin grfica.
Para calcular el valor mximo de la potencia y la velocidad angular de rotacin del
motor en esas condiciones se aplica el comando max() a la curva representada.
En la figura siguiente se ve detalladamente con una captura del programa cmo se
muestra la curva y los parmetros asociados a ella:

61

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Fig. (3.20): Interfaz grfica: dinmica longitudinal, curva de potencia y lectura del valor mximo.

A continuacin hay que repetir el proceso para la curva de par pinchando sobre el
botn destinado a tal fin (CURVA DE PAR).
Al igual que para la curva de potencia, se obtienen los valores de par mximo de
la velocidad angular de rotacin del motor a la que se da esta situacin.
Para construir la grfica se vuelve a emplear el comando polyfit con regresin de
grado tres y polyval y plot para mostrarla. A diferencia de la curva de potencia no
hay que realizar ninguna operacin, ya que el array es la curva de par y la
representacin ser directa de la primera y la segunda columna.
Nuevamente se muestra una imagen para aclarar la situacin:

62

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Fig. (3.21): Interfaz grfica: dinmica longitudinal, curva de par y lectura de valores mximos.

Ahora ya se puede decir que estn completados los datos de entrada (los
introducidos por pantalla y el array curvapar cargado para la curva de potencia y la
curva de par) y en condiciones para poder comenzar la simulacin en s. Para ello
se presiona el botn CALCULAR RELACIONES DE TRANSMISIN Y
PRESTACIONES.
Al pulsar el botn se realizan los siguientes clculos:
Velocidad mxima en km/h:
Para calcular la velocidad mxima del vehculo se supone, como ya se
mencion con anterioridad, potencia mxima y pendiente nula. As pues lo
que realiza el programa es resolver la siguiente ecuacin con el comando
solve():

63

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

1
= 9.81 + 3
2
Como resultado se obtienen tres valores, de los cuales se selecciona el valor
real de mayor magnitud. Para ello, primeramente, hay que comprobar si
cada uno de los resultados son nmeros reales o imaginarios. Esto se
consigue con el comando isreal(). Si la solucin es imaginaria cambiar su
valor por cero y lo almacenar en un vector (1x3). Si por el contrario es real,
almacenar directamente el valor en el vector. Por ltimo, se calcula el
mximo del vector donde se han almacenado los valores y as se obtiene la
solucin del apartado.
Pendiente mxima que remonta el vehculo en %:
El criterio empleado para calcular la pendiente mxima a remontar es la
perdida de adherencia de los neumticos.

<

Segn el tipo de traccin del vehculo, introducida por un botn de lista


desplegable, el programa elegir la expresin adecuada y calcular la
solucin con solve() a travs del comando:
switch traccin
case 1 (traccin delantera)
+ =

( + )
+

case 2 (traccin trasera)


+ =

( )

case 3 (traccin total)


+ =
De las soluciones obtenidas el programa selecciona la mayor y cambia su
valor de grados a tanto por ciento.

64

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Aceleracin mxima para cada relacin de transmisin en m/sg2:


Se comienza calculando la fuerza mxima disponible para acelerar con
cada una de las cinco relaciones de transmisin.
La fuerza disponible para acelerar se define como la diferencia entre la
fuerza de traccin y la fuerza resistiva que tiene que vencer el vehculo para
la pendiente que este remontando. Representada en el diagrama de traccin
dicha fuerza ser:

Fig. (3.22): Diagrama de traccin, fuerza disponible para acelerar.

La expresin matemtica empleada para su clculo es:


=


1
( + + 2 )

donde v es la velocidad del vehculo a la cual la Fda es mxima para cada


una de las relaciones de transmisin.
Una vez calculada la Fda, slo es necesario estimar el valor del factor de
masas. Para ello se ha implementado en el programa la siguiente ecuacin:
= 1.04 + 0.0025 2

Con todo lo anterior, se calcula la aceleracin mxima para cada relacin de


transmisin como:
=

65

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Relaciones de transmisin:
Para comenzar, se calcula la relacin ms larga como la relacin que se da
a velocidad mxima del vehculo y a la mxima potencia del motor:
5 =

A continuacin el programa calcula la relacin ms corta (mxima pendiente)


a partir de la expresin:
1 =

( + )

El resto de relaciones se calculan por progresin geomtrica:


1
=
5

1
51

4 = 5
3 = 4 = 2 5
2 = 3 = 3 5
1 = 2 = 4 5

Para calcular la relacin entre el motor y la transmisin se dividen las


relaciones anteriores por la reduccin en el diferencial.
Una vez calculadas las prestaciones del vehculo y las relaciones de transmisin
se pueden calcular y representar el diagrama de potencias y el diagrama de
traccin.
Diagrama de potencias:
Representa la potencia del motor para cada relacin de transmisin.
Partiendo del array curvapar, se modifica su primera columna de forma que,
multiplicando por el radio de la rueda y dividiendo por cada una de las
relaciones de transmisin, se obtiene la velocidad del vehculo.

66

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

De la segunda columna del array se obtiene la potencia al multiplicarla (par)


por la velocidad angular del motor.
Una vez transformados los datos de entrada del array se pasa a la
representacin de las curvas tal y como se hizo en casos anteriores, con
polyfit de grado tres y con polyval.
Para la curva de carga se ha implementado en el programa la orden plot(x,y)
directamente, ya que se conoce la ecuacin que la describe:
= + +

1
3
2

= 0 250

Fig. (3.23): Interfaz grfica: dinmica longitudinal, diagrama de potencias y curva de carga.

Diagrama de traccin:
Para representar el diagrama de traccin hay que obtener la fuerza de
traccin del vehculo en funcin de la velocidad. Los clculos realizados son:
= = = = =

67

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

As pues, tomando la primera columna del array, multiplicndola por el radio


de la rueda y dividindola por cada una de las relaciones de transmisin se
obtienen las velocidades del vehculo para cada caso.
Segn las operaciones anteriores la fuerza se ha calculado multiplicando la
segunda columna del array por la relacin de transmisin y dividindola por
el radio de la rueda.
Adems de todo lo anterior se representa la fuerza resistiva que debe vencer
el vehculo para diversas pendientes. En la siguiente grfica se representa
dicha fuerza para llano, 25 % y 50 % de pendiente. La conclusin a la que
se llega interpretando la grfica es que el vehculo remontar la pendiente
del 25 % con las dos primeras relaciones de transmisin pero no ser capaz
de remontar en ningn momento una pendiente del 50 %.

Fig. (3.24): Interfaz grfica: dinmica longitudinal, diagrama de traccin.

Por ltimo destacar que la interfaz disponemos de un botn RESET para


reiniciarla y un botn SALIR para cerrar la ventana.

68

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

3.2.4 Ejemplo prctico.


La curva par velocidad de un motor puede aproximarse mediante la expresin
T=180-1.2510-5(wn-4000)2, siendo wn la velocidad del motor en rpm, T el par
motor expresado en Nm. Esta planta de potencia se va a instalar en un vehculo
con las siguientes caractersticas:
- Masa: 1950 kg.
- Batalla: 3.8 m.
- Altura del c.d.g: 0.5 m.
- Dimetro de las ruedas: 600 m
- Coeficiente de resistencia a la rodadura: 0.01
- Coeficiente de resistencia aerodinmica: 0.4
- Coeficiente de adherencia: 0.9
- rea frontal: 1.6 m2
- Reduccin del diferencial: 2
- Rendimiento de la transmisin: 85 %
La distribucin de pesos entre los ejes delantero / trasero es de 55/45. Suponer
una densidad del aire de 1.2 kg/m3.
Calcular las prestaciones y las relaciones de transmisin y dibujar diagrama de
potencias y diagrama de traccin para los distintos tipos de traccin de un vehculo
(delantera, trasera y total).

SOLUCIN DEL EJEMPLO PROPUESTO

- CASO A: TRACCIN DELANTERA.

Se comienza por introducir todos los datos de entrada. A continuacin se dibuja la


curva de potencia y la curva de carga, de forma que as se obtendrn los valores
de potencia mxima, par mximo y velocidades angulares de rotacin del motor
para estos valores mximos, necesarios para realizar el resto de clculos (la curva
de par de este ejercicio es la que tiene almacenada el programa por defecto). Una
vez realizado todo esto la interfaz tendr este aspecto:

69

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Fig. (3.25): Interfaz grfica: dinmica longitudinal, datos ejemplo con traccin delantera.

Con esto realizado ya se pueden calcular las relaciones de transmisin y mostrar


los diagramas:

Fig. (3.26): Interfaz grfica: dinmica longitudinal, resultados ejemplo con traccin delantera.

70

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Como ltimo resultado se obtiene el diagrama de traccin:

Fig. (3.27): Interfaz grfica: dinmica longitudinal, resultados ejemplo con traccin delantera.

En el diagrama de traccin se muestra la fuerza para cada una de las relaciones


de transmisin y la fuerza resistiva para las pendientes del 50 % (lnea superior),
25 % (lnea intermedia) y 0 % (lnea inferior).

- CASO B: TRACCIN TRASERA.


En este caso se procede a resolver el ejemplo de la misma forma que en el
apartado anterior pero cambiando el tipo de traccin a trasera.
As los resultados sern:

71

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Fig. (3.28): Interfaz grfica: dinmica longitudinal, resultados ejemplo con traccin trasera.

Como resultado de inters, resaltar que con traccin trasera aumenta dbilmente el
% de pendiente mxima a remontar por el vehculo. Adems, tambin se produce
un ligero aumento de las aceleraciones mximas.

Fig. (3.29): Interfaz grfica: dinmica longitudinal, resultados ejemplo con traccin trasera.

72

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

- CASO C: TRACCIN TOTAL.


Para finalizar el ejemplo se realizar la simulacin para un vehculo con las
caractersticas descritas y con traccin a las cuatro ruedas. En la figura siguiente
se muestran los resultados:

Fig. (3.30): Interfaz grfica: dinmica longitudinal, resultados ejemplo con traccin total.

Ahora s que se puede apreciar un aumento sensible de la capacidad del vehculo


para remontar pendientes, llegando a poder circular por una carretera con un 66 %
de inclinacin, a diferencia de los casos anteriores que estaba en torno al 40 %.
Nuevamente aumentan las aceleraciones mximas, ya que la fuerza de traccin
que desarrolla el vehculo con traccin total es mayor. Se completan los resultados
con el diagrama de traccin:

73

D.LONGITUDINAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Fig. (3.31): Interfaz grfica: dinmica longitudinal, resultados ejemplo con traccin total.

En el diagrama de traccin se ve con claridad cmo, en este caso, el vehculo


remontar sin problemas pendientes del 50 % circulando con la relacin de
transmisin ms baja.

74

D.VERTICAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Captulo IV: Dinmica Vertical.

75

D.VERTICAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

4 DINMICA VERTICAL.
4.1 Fundamentos tericos.
4.1.1 Elementos elsticos.
Los elementos elsticos de una suspensin son los encargados de almacenar la
energa elstica destinada a acelerar la masa suspendida.
A continuacin se estudiarn de forma independiente cada uno de los principales
tipos de elementos elsticos:
Muelles helicoidales:
Estn formados por una barra de acero, circular o elptica, enrollada en
forma de espiral. Es sin duda el tipo de elemento elstico ms utilizado en la
actualidad en los automviles.

Fig. (4.1): Muelle helicoidal en la suspensin de un turismo.

En comparacin con las ballestas, por ejemplo, el muelle helicoidal puede


almacenar ms del doble de energa por unidad de volumen de material y
posee adems un mnimo rozamiento interno. Por el contrario, los muelles
necesitan un gran espacio vertical para su instalacin y adems no pueden
emplearse como el nico elemento de unin entre el chasis y la suspensin.
Otro inconveniente es que no pueden utilizarse en vehculos pesados, ya
que sufriran ante los esfuerzos de pandeo.
El principal esfuerzo que soportan los muelles helicoidales es la torsin. La
rigidez de un muelle empleado en el sistema de suspensin de un vehculo
ser:
=

4
8 3

76

Ec. (4.1)

D.VERTICAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

=
=
=
=

Barras estabilizadoras:
Limitan el movimiento de balanceo del vehculo sin comprometer la rigidez
vertical de la suspensin.
Sobre las barras actan solicitaciones cuando el eje tome un bache que
afecte a las dos ruedas. No obstante, cuando el cuerpo del vehculo gira
respecto del eje longitudinal, la barra sufre una torsin que se opone al
movimiento a ese movimiento, es decir, incrementa su rigidez de vuelco.
Destacar que es posible emplear a la vez las barras estabilizadoras y los
muelles helicoidales, tal y como se observa en la siguiente imagen:

Fig. (4.2): Suspensin conjunta de muelles helicoidales y barra estabilizadora.

La rigidez de una barra estabilizadora o de torsin viene dada por la


expresin:
=

=
=
=
=

77

Ec. (4.2)

D.VERTICAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Ballestas:
Tipo de resorte compuesto por lminas de acero, superpuestas, de longitud
decreciente, unidas por unas abrazaderas que permiten el deslizamiento
entre las hojas o lminas cuando stas se deforman por el peso del vehculo.

Fig. (4.3): Ballesta.

Su principal ventaja es que puede emplearse como nico elemento de unin


entre la carrocera y el sistema de suspensin.
La elevada rigidez transversal de las ballestas en comparacin con un
muelle helicoidal hace que sean el elemento ideal para suspender los
vehculos de carga o de gran volumen, de ah que sus principales
aplicaciones sean en automviles 4x4, camiones y remolques. En caso de
emplear muelles helicoidales en dichos vehculos, el pandeo sera incapaz
de soportarse al pasar por un bache o una carretera inclinada ligeramente.
A continuacin se estudian los parmetros que influyen en su diseo. Se
comienza calculando la rigidez de una lmina de seccin uniforme apoyada
en dos puntos:
=

48

Ec. (4.3)

= .
= .
= .

En el caso de varias lminas de igual longitud, unidas sin friccin, la rigidez


ser:
=

48
3

Ec. (4.4)

Si adems las lminas son de distinta longitud tendremos:


= 48

78

( )3

Ec. (4.5)

D.VERTICAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Esta ltima expresin es la que se corresponde con la rigidez de una ballesta


como la que se muestra en la imagen anterior.

Balonas neumticas:
Almacenan la energa comprimiendo un gas (generalmente aire) en una
cmara de volumen variable, construida con un material plstico muy
resistente y flexible.
Este tipo de elementos elsticos basan su funcionamiento en las
propiedades que ofrece el aire sometido a presin. En las suspensiones
neumticas, se sustituye el resorte mecnico (muelle, ballesta o barra de
torsin) por una balona neumtica.

Fig. (4.4): Distintos tipos de balonas neumticas.

Las suspensiones con balonas se caracterizan por:


o Adaptar la carrocera a distintas alturas en funcin de las necesidades
de marcha.
o Adaptar la suspensin y la amortiguacin a la situacin de la calzada y
a la forma de conducir.
Como ventajas destacar su gran flexibilidad y su alta capacidad de
amortiguacin y, debido a la autorregulacin del sistema, permite mantener
constante la distancia entre el chasis y la superficie de carretera
independientemente de la carga presente en el vehculo.
Su principal inconveniente es que necesitan un circuito de aire comprimido
(conductos, vlvulas, compresor), lo que hace el diseo ms complejo y
eleva sus costes.
Una vez definidas sus caractersticas se realizar un estudio matemtico de
su funcionamiento.

79

D.VERTICAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

El proceso de compresin que sigue el aire se rige por la siguiente ecuacin:


=

Ec. (4.6)

=
=
= .

La fuerza ser funcin del desplazamiento segn la ecuacin:


0 0

Ec. (4.7)

0 =
0 =
=
=

Entonces, se define la rigidez como:


=

2 0 0
0 +1

Ec. (4.8)

Es importante destacar que la frecuencia natural del peso (W=mg) soportado


por la balona neumtica (P0 = mg/A) es independiente de la masa:
=

01

Ec. (4.9)

Esta caracterstica hace que este tipo de elementos elsticos sean muy
atractivos para vehculos en los cuales hay una gran variacin entre las
situaciones de carga y de vaco, tales como camiones.

Bloques de elastmero:
Piezas de material plstico que almacenan energa y trabajan a cortante.
Suelen tener una armadura o soporte metlico.

80

D.VERTICAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Su principal caracterstica es que presentan una histresis natural importante


y, por tanto, una adecuacin para la supresin de vibraciones a alta
frecuencia.
La carga que pueden soportar depender del factor de forma o de la relacin
entre el rea cargada y el rea libre total.

Fig. (4.5): Elemento elstico trabajando a cortante.

La rigidez de los elementos que trabajan a cortante es:


=

Ec. (4.10)

=
=
=

4.1.2 Elementos amortiguadores.


Elementos que disipan energa limitando la duracin de las oscilaciones de la
masa suspendida a un intervalo de tiempo finito despus de extinguida la fuerza de
excitacin. Adems evitan que las ruedas del vehculo pierdan el contacto con la
superficie de rodadura.
En la siguiente imagen se aprecian con detalle las partes de las que consta un
amortiguador:

81

D.VERTICAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Fig. (4.6): Detalle de un amortiguador.

Cuando se mueve el pistn en el interior del cilindro, el fluido pasa de un lado a


otro a travs de unos orificios, generndose un flujo turbulento que favorece la
disipacin de energa en forma de calor.
Ahora se estudiar el funcionamiento de distintos tipos de amortiguadores:

Fig. (4.7): Amortiguadores.

82

D.VERTICAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Si se realiza el diseo como el amortiguador Fig. (4.7) a, no se garantiza su


funcionamiento como elemento disipador de energa, ya que al moverse el pistn
hacia la izquierda, el volumen desplazado en la zona izquierda del cilindro es
mayor al generado en la zona derecha. Como los lquidos pueden considerarse
incompresibles, este amortiguador se atascar y no realizar sus funciones
correctamente.
Para solventar el problema se disean amortiguadores de doble tubo (Fig. (4.7)b),
de cmara de gas (Fig.(4.7)c) o de balancn (Fig.(4.7)d):
Amortiguadores de doble tubo: son los ms empleados hoy da. Pueden
subdividirse en presurizados (llevan aceite y gas) y no presurizados (slo
tienen aceite). Estn formados por dos cmaras, una interior y otra de
reserva y tienen vlvulas en el pistn y en la base del cilindro (vlvula de
pie). La cmara exterior o de reserva absorbe las diferencias de volumen y
las vlvulas redirigen el fluido en la carrera de contraccin y extensin, de
modo que el coeficiente de amortiguamiento puede ser distinto en cada una
de estas carreras.
Por ltimo destacar las ventajas de los amortiguadores de doble tubo
presurizados frente a los no presurizados: respuesta ms sensible para
pequeas amplitudes, mejorando as el confort, mejor comportamiento en
condiciones extremas (grandes baches), siguen operativos aunque pierdan
el gas,, etc.
Amortiguadores de cmara de gas: en este caso estn formados por un solo
tubo, pero disponen de un pistn libre adicional, de forma que constan de
dos cmaras principales, una de aceite y otra de gas. El gas ser el
encargado de absorber las diferencias de volumen. Como ventajas frente a
los anteriores destacar que son ms eficaces, tienen mayor dimetro del
pistn a igual dimetro exterior (es necesaria menor presin),, etc. Los
inconvenientes vendrn asociados al mayor coste de fabricacin debido a la
mayor precisin necesaria, estanqueidad del gas,, etc.

Amortiguadores de balancn: los volmenes desplazados en ambas carreras


son iguales, de forma que no es necesario disponer de un fluido
compresible. Tampoco necesitan gas aquellos amortiguadores en los cuales
la espiga central puede recorrer todo el cilindro (empleados en direcciones
de motocicletas).

83

D.VERTICAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

4.1.3 Excitaciones: carretera, rueda y motor.


CARRETERA:
Como bien se sabe, la carretera es la principal fuente de excitaciones para el
sistema de suspensin de un vehculo. Ya se coment anteriormente que,
ante la imposibilidad de construir carreteras perfectamente niveladas, se
comenz con el diseo de sistemas de suspensin.
Se pueden representar los desniveles de una carretera mediante su
descripcin estadstica como proceso aleatorio. Para cada zona o tramo de
carretera se obtiene una densidad espectral representativa que, junto a otras
densidades de otros tramos, darn lugar a espectros medios representativos
del tipo de carretera.

Fig. (4.8): Densidades espectrales de dos carreteras.

Una de las expresiones utilizadas para ajustar los datos experimentales es:

=

1
0
2
0

, <
,

Ec. (4.11)

Siendo S la densidad espectral, la frecuencia y , n1 y n2 constantes.


Otra expresin empleada es, por ejemplo:
=

84

1+ /
2

Ec. (4.12)

D.VERTICAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Con alguna de estas expresiones y generando nmeros aleatorios se puede


reconstruir el perfil aleatorio cuyo contenido en frecuencia se corresponda
con una carretera.
La expresin que relaciona el nmero de onda y la frecuencia es:
=

Ec. (4.13)

por lo que la densidad espectral en funcin de la frecuencia w ser:


w =

1
v

Ec.(4.14)

Tomando la diferencia entre las medidas en el lado izquierdo y en el derecho


del vehculo, se obtiene la solicitacin de balanceo. Dicha solicitacin, al
igual que la vertical, se tratar como un proceso aleatorio para el que se
puede definir una densidad espectral.
Normalmente la frecuencia natural de balanceo ser inferior a la del
movimiento vertical, por lo que, la solicitacin vertical ser ms importante.

RUEDA:
Algunos desequilibrios que se producen en la rueda (llanta y neumtico) dan
lugar a vibraciones. Estos desequilibrios pueden provenir de diferentes
causas como:
o Desequilibrio de masa:
Cuando el desequilibrio se produce en las ruedas delanteras del vehculo
(en las directrices), las vibraciones se transmiten directamente al
conductor a travs del sistema de direccin, incrementando su nivel de
exposicin y resultando muy incmoda la conduccin. Esto se soluciona
con el equilibrado de las ruedas, que consiste en distribuir las masas de
forma que se elimine el momento alrededor del eje transversal y en
trasladar en c.d.g. de la rueda al eje de giro. Se consigue colocando una
masa en el lugar adecuado de la llanta.

85

D.VERTICAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Fig. (4.9): Mquina para equilibrado de ruedas y masas empleadas.

o Imperfecciones geomtricas:
Las imperfecciones geomtricas se dan en los neumticos como
consecuencia del proceso de fabricacin. Los neumticos imperfectos
hacen variar la altura del eje de la rueda respecto del suelo, por lo que
representa una solicitacin vertical. Adems la distancia recorrida
depender de esta deformacin, generndose una aceleracin
longitudinal en el eje que da lugar a esa variacin de velocidad. Todo esto
conlleva a que las imperfecciones geomtricas del neumtico afectan
tanto vertical como longitudinalmente.
o Variaciones radiales de rigidez:
El eje presentar variaciones de altura para la misma carga. La vibracin
es muy similar a la que producen los neumticos con imperfecciones.
Todo esto se traduce en fuerzas y momentos en direcciones vertical,
longitudinal y transversal.
MOTOR:
Las vibraciones en el motor se deben, mayormente, a la variacin del par
debido al nmero finito de cilindros del motor.
Para impedir que estas vibraciones se transfieran al resto del vehculo es
necesario realizar uniones elsticas entre el motor y el chasis del vehculo.
Dichas uniones permitirn el giro en torno al eje del par, o mejor, alrededor
del eje principal de menor inercia (suele estar inclinado respecto del par
debido a la masa de la transmisin). Destacar que si el momento de inercia
alrededor de un eje es muy grande, la variacin del momento segn dicho

86

D.VERTICAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

eje no va a ser capaz de hacerlo vibrar. Esta componente del momento tiene
menor importancia que la aplicada segn el eje de menor inercia.

Fig. (4.10): Uniones elsticas entre el motor y el chasis.

Las uniones tienen que ser tan flexibles que den lugar a una frecuencia
natural inferior a la menor frecuencia de giro del motor. As las vibraciones
del motor sern absorbidas por las uniones elsticas antes de excitar al
vehculo en s. Adems, si la frecuencia natural vertical es del orden de la
correspondiente a la masa no suspendida, el motor absorber vibraciones de
la carretera.
La transmisin producir vibraciones cuando, en una junta de unin, el par
cambie de direccin. Esto se traduce en un par transmitido directamente a la
unin elstica. Cuando vara el ngulo en la junta por el movimiento vertical
del vehculo, tambin lo har el momento transmitido, siendo dicha
variabilidad una fuente de vibraciones. En el caso de vehculos pesados, las
variaciones de ngulo pueden estar ms acentuadas.

Fig. (4.11): Reacciones en las uniones de la transmisin.

87

D.VERTICAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

4.1.4 Modelo: Modelo de 1 GDL: Bote.


El modelo de un grado de libertad del vehculo puede asemejarse a la suspensin
independiente de un cuarto de vehculo. Slo tiene en cuenta el movimiento de
bote del automvil.
El modelo est representado por una masa suspendida, M, que apoya en un
muelle elstico de rigidez, K, y en un amortiguador de coeficiente, C. Como se
puede observar, el modelo no considera la masa de la rueda, es decir, la masa no
suspendida.

Fig. (4.12): Modelo de 1 GDL.

El comportamiento de sistema de suspensin de un vehculo que circula por una


carretera, teniendo en cuenta el modelo de 1 GDL, puede esquematizarse como:

Fig. (4.13): Modelo de 1 GDL y comportamiento del vehculo en carretera.

88

D.VERTICAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

En este esquema aparecen, adems de los citados anteriormente, los siguientes


parmetros: seal de entrada o excitacin, y, seal de salida, x, amplitud de la
seal de entrada, a, y longitud de onda de la seal de entrada, L.
A continuacin se estudia de forma matemtica el modelo:

Fig. (4.14): estudio matemtico del modelo de 1 GDL.

Considerando la excitacin y el comportamiento de los elementos del sistema,


llegamos a la siguiente expresin:
=

++ =+

Ec. (4.15)

Si se consideran las siguientes expresiones:

=
=

Ec. (4.16)
Ec. (4.17)

donde wn es la frecuencia natural y es el factor de amortiguamiento, la ecuacin


(4.15) quedar expresada como se muestra a continuacin:
+ 2 + 2 = 2 + 2

Ec. (4.18)

Con esta relacin ha quedado definido el movimiento del vehculo considerando el


modelo de 1 GDL.

89

D.VERTICAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Por ltimo se describe la funcin de transferencia del sistema:


=

Ec. (4.19)

=
=
=

1+4 2 2
(1 2 )2 +4 2 2

Ec. (4.20)

Representando en una grfica |X/Y| en funcin de la relacin de frecuencias, se


obtiene:

Fig. (4.15): funcin de transferencia.

90

D.VERTICAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

4.2 Interfaz grfica.


4.2.1 Datos de entrada.
Como datos de entrada en la interfaz grfica de dinmica vertical se tienen:

Datos del vehculo:


o

Masa del vehculo en kg.

Constante (K) de rigidez del muelle en (N/m).

Constante (C) del amortiguador en (N/m).

Datos del perfil de la carretera:


o

Frecuencia de la onda en Hz.

Forma del perfil de la carretera:


Senoidal.
Suma de funciones senoidales.
Funcin aleatoria: est compuesta por una suma de seales
senoidales ms un rizado aleatorio de menor amplitud que la
suma (al elegir esta seal se desactiva el recuadro de
frecuencia).
Cuando se realice la simulacin se representar grficamente la seal
de entrada (perfil de la carretera).

4.2.2 Parmetros de salida.


Los datos obtenidos tras la simulacin de la dinmica vertical pueden ser
numricos o grficos.
Numricos:
o Frecuencia natural en rad/sg.
o Factor de amortiguamiento del sistema.
o Relacin de frecuencias: relacin entre la frecuencia de la onda de
entrada y la frecuencia natural.

91

D.VERTICAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Grficos:
Habr dos grficas de salida, una reproduccin del movimiento que realizar
el vehculo despus de actuar la suspensin y una representacin de la
funcin de transferencia en funcin de la relacin de frecuencias.
Se observa detalladamente a continuacin una captura de la pantalla inicial del
programa para la dinmica vertical:

Datos de entrada

Parmetros de salida

Fig. (4.16): Interfaz grfica: dinmica vertical.

4.2.3 Operacin y funcionamiento.


Como con el resto de las otras dinmicas, se comienza ejecutando el archivo
simulacin donde aparecen los botones para elegir la dinmica.

92

D.VERTICAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Fig. (4.17): Interfaz grfica: pantalla principal.

Pinchando en la opcin de dinmica vertical y entrando en la parte del programa


dedicada a la dinmica vertical:

Fig. (4.18): Interfaz grfica: pantalla dinmica vertical.

Se empieza la simulacin, como en todos los casos, introduciendo los datos de


entrada comentados en el aparatado 4.2.1. Tambin aqu, el usuario podr

93

D.VERTICAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

desplazarse de una casilla a otra de los datos de entrada con el tabulador del
teclado.
Nuevamente, los datos de entrada de la interfaz son valores numricos,
(exceptuando el men desplegable para elegir el tipo perfil de la carretera) por lo
que, al igual que en la dinmica lateral y en la longitudinal, si se introduce un
carcter no numrico en uno de los recuadros de toma de datos, saltar un
mensaje de error y se eliminar el valor errneo introducido.

Fig. (4.19): Interfaz grfica: dinmica vertical, error por carcter no numrico.

Una vez introducidos los datos, se pueden realizar los clculos. Para ello se
pulsar el botn CALCULAR y el programa realizar las siguientes operaciones
para obtener los resultados numricos y las representaciones grficas:

Clculo de la frecuencia natural y del factor de amortiguamiento:

=
=

Ambos parmetros se obtienen directamente operando con los datos de


entrada

94

D.VERTICAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Clculo de la relacin de frecuencias: una vez calculada la frecuencia natural


y teniendo como dato de entrada la frecuencia de la onda que representa el
perfil de la carretera, se calcula la relacin de frecuencias como:
=

Una vez calculados los tres parmetros numricos de salida, se construirn las
grficas.

Funcin de transferencia:
Calculada anteriormente la relacin de frecuencias, se calcula la funcin de
transferencia como:
X
=
Y

1 + 4 2 2
(1 2 )2 + 4 2 2

La grfica se construye representando en el eje x la relacin de frecuencias


y en el eje y la expresin anterior (funcin de la relacin de frecuencias). Se
emplea para ello el comando plot().
Destacar que la funcin de transferencia definida anteriormente slo se
representa para el caso de seal de entrada senoidal, ya que para el caso de
la suma de funciones su aplicacin no sera directa (habra que aplicar el
principio de superposicin) y en el caso de que fuese aleatoria no se
dispone de la relacin de frecuencias (al ser una seal aleatoria no se
conoce la frecuencia de la onda).
La grfica representada es de estas caractersticas:

Fig. (4.20): Interfaz grfica: dinmica vertical, funcin de transferencia.

95

D.VERTICAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Grfica para representar la salida y la entrada del sistema, es decir, el


movimiento del vehculo segn el perfil de la carretera:
Para representar la grfica de salida hay que resolver la ecuacin
diferencial que se obtuvo del modelo de 1 GDL:
+ 2 + 2 = 2 + 2
donde y es la excitacin y x la salida.
Para obtener la solucin se ha empleado el comando ode45() de matlab, que
resuelve la ecuacin por el mtodo numrico de Runge-Kutta de orden 4.
El programa elige la entrada segn se haya seleccionado una opcin u otra
en el botn desplegable del perfil de la carretera. Para hacer esta seleccin
se ha utilizado, una vez ms en matlab, la orden
switch
case 1

case 2

end
Para hacer la representacin grfica, tanto de la entrada como de la salida,
se vuelve a implementar el comando plot().
Finalmente resaltar que se dispone, como en la interfaz de dinmica lateral y de
longitudinal, de los botones RESET y SALIR cuyas funciones se conocen ya
sobradamente.

4.2.4 Ejemplo prctico.


Simular la dinmica vertical de un vehculo de 1000 kg de masa que presenta una
suspensin con las siguientes caractersticas:
K=50000 N/m
C=20000 N/m
A) Suponer que el perfil de la carretera se asemeja a una seal senoidal de
frecuencia 1 Hz
B) Realizar nuevamente la simulacin cambiando el valor de C=2000 N/m y
comentar los resultados obtenidos.

96

D.VERTICAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

SOLUCIN DEL EJEMPLO PROPUESTO

- APARTADO A:

Introduciendo los datos del problema se obtienen los siguientes resultados:

Fig. (4.21): Interfaz grfica: dinmica vertical, ejemplo apartado A.

Los resultados obtenidos son:


- Frecuencia natural: 7.0711 rad/sg.
- Factor de amortiguamiento: 1.4142
- Relacin de frecuencias: 0.88858
Destacar que la relacin entre la amplitud de la seal de entrada y la amplitud de la
seal de salida viene impuesta por el valor de la funcin de transferencia para la
relacin de frecuencias.
En este caso el valor de la relacin de frecuencias es de 0.88858 que corresponde
a un valor de la funcin de transferencia de 1.08. As se comprueba que la seal
de salida tiene una amplitud de 1.08 veces la amplitud de la seal de entrada.

97

D.VERTICAL

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

- APARTADO B:

Modificando el valor de la constante del amortiguador se obtienen los siguientes


valores:

Fig. (4.22): Interfaz grfica: dinmica vertical, ejemplo apartado B.

Al modificar los datos se obtienen los resultados que se muestran a continuacin:


- Frecuencia natural: como su valor depende nicamente de la masa del vehculo y
de la constante del muelle (no se han modificado), su valor sigue siendo igual
(7.0711 rad/sg).
- Factor de amortiguamiento: al modificar la constante del muelle, este parmetro
cambiar, ya que depende directamente de C. Como se ha disminuido la constante
C tambin lo har el factor de amortiguamiento, siendo su valor para este caso
0.14142
- Relacin de frecuencias: como se mantienen los valores de frecuencia de la seal
de entrada y de la frecuencia natural, no variar el valor de la relacin de
frecuencias (0.88858).

98

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Captulo V: Anexos.

99

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

5 ANEXOS.
5.1 Dinmica de vehculos: Cdigo del programa.
function varargout = SIMULACION(varargin)
%SIMULACION M-file for SIMULACION.fig
% SIMULACION, by itself, creates a new SIMULACION or raises the existing
% singleton*.
%
% H = SIMULACION returns the handle to a new SIMULACION or the handle to
% the existing singleton*.
%
% SIMULACION('Property','Value',...) creates a new SIMULACION using the
% given property value pairs. Unrecognized properties are passed via
% varargin to SIMULACION_OpeningFcn. This calling syntax produces a
% warning when there is an existing singleton*.
%
% SIMULACION('CALLBACK') and SIMULACION('CALLBACK',hObject,...) call the
% local function named CALLBACK in SIMULACION.M with the given input
% arguments.
%
% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one
% instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES
% Edit the above text to modify the response to help SIMULACION
% Last Modified by GUIDE v2.5 15-Oct-2010 18:00:03
% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct('gui_Name',
mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @SIMULACION_OpeningFcn, ...
'gui_OutputFcn', @SIMULACION_OutputFcn, ...
'gui_LayoutFcn', [], ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end
if nargout

100

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});


else
gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT

% --- Executes just before SIMULACION is made visible.


function SIMULACION_OpeningFcn(hObject, eventdata, handles, varargin)
%___Mostrar imagenes de la pantalla principal____%
axe=imread(strcat(pwd,'\unex.jpg'));
axes(handles.axes1);
imshow(axe);
axe2=imread(strcat(pwd,'\eii.jpg'));
axes(handles.axes2);
imshow(axe2);
axe3=imread(strcat(pwd,'\coche.jpg'));
axes(handles.axes3);
imshow(axe3);
% This function has no output args, see OutputFcn.
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% varargin unrecognized PropertyName/PropertyValue pairs from the
%
command line (see VARARGIN)
% Choose default command line output for SIMULACION
handles.output = hObject;
% Update handles structure
guidata(hObject, handles);
% UIWAIT makes SIMULACION wait for user response (see UIRESUME)
% uiwait(handles.figure1);

% --- Outputs from this function are returned to the command line.
function varargout = SIMULACION_OutputFcn(hObject, eventdata, handles)
% varargout cell array for returning output args (see VARARGOUT);
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

101

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

% Get default command line output from handles structure


varargout{1} = handles.output;

% --- Executes on button press in OKDL.


function OKDL_Callback(hObject, eventdata, handles)
%____Abrir pantalla de dinamica lateral____%
gcf(DL)
% hObject handle to OKDL (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

% --- Executes on button press in OKDLg.


function OKDLg_Callback(hObject, eventdata, handles)
%____Abrir pantalla de dinamica longitudinal____%
gcf(DLg)
% hObject handle to OKDLg (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

% --- Executes on button press in OKDV.


function OKDV_Callback(hObject, eventdata, handles)
%____Abrir pantalla de dinamica vertical____%
gcf(DV)
% hObject handle to OKDV (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

% --- Executes on button press in pushbutton4.


function pushbutton4_Callback(hObject, eventdata, handles)
%____Cerrar ventana____%
close(SIMULACION)
% hObject handle to pushbutton4 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

102

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

5.2 Dinmica lateral: Cdigo del programa.


function varargout = DL(varargin)
% DL M-file for DL.fig
% DL, by itself, creates a new DL or raises the existing
% singleton*.
%
% H = DL returns the handle to a new DL or the handle to
% the existing singleton*.
%
% DL('CALLBACK',hObject,eventData,handles,...) calls the local
% function named CALLBACK in DL.M with the given input arguments.
%
% DL('Property','Value',...) creates a new DL or raises the
% existing singleton*. Starting from the left, property value pairs are
% applied to the GUI before DL_OpeningFunction gets called. An
% unrecognized property name or invalid value makes property application
% stop. All inputs are passed to DL_OpeningFcn via varargin.
%
% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one
% instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES
% Copyright 2002-2003 The MathWorks, Inc.
% Edit the above text to modify the response to help DL
% Last Modified by GUIDE v2.5 28-Oct-2010 18:57:17
% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct('gui_Name',
mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @DL_OpeningFcn, ...
'gui_OutputFcn', @DL_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end

103

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT

% --- Executes just before DL is made visible.


function DL_OpeningFcn(hObject, eventdata, handles, varargin)
% This function has no output args, see OutputFcn.
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% varargin command line arguments to DL (see VARARGIN)
%____Mostrar imagen____%
axe=imread(strcat(pwd,'\coche.jpg'));
axes(handles.axes2);
imshow(axe);
axes(handles.axes1);
X=0:180;
Y=1;
plot(X,Y,'w');
% Choose default command line output for DL
handles.output = hObject;
% Update handles structure
guidata(hObject, handles);
% UIWAIT makes DL wait for user response (see UIRESUME)
% uiwait(handles.figure1);

% --- Outputs from this function are returned to the command line.
function varargout = DL_OutputFcn(hObject, eventdata, handles)
% varargout cell array for returning output args (see VARARGOUT);
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Get default command line output from handles structure
varargout{1} = handles.output;

104

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

% --- Executes on button press in CALCULAR.


function CALCULAR_Callback(hObject, eventdata, handles)
%____Lectura de datos de entrada____%
m = str2double(get(handles.M,'string'));
l = str2double(get(handles.L,'string'));
a = str2double(get(handles.A,'string'));
b = str2double(get(handles.B,'string'));
cr = str2double(get(handles.CR,'string'));
cf = str2double(get(handles.CF,'string'));
v = str2double(get(handles.V,'string'));
desmul = str2double(get(handles.DESMUL,'string'));
r = str2double(get(handles.R,'string'));
%____Calculos____%
wf = (m*9.81*b)/l;
wr = (m*9.81*a)/l;
u = (wf/cf)-(wr/cr);
delta = (l/r)+u*((v*1000/3600)^2/(9.81*r));
deltav = delta * desmul;
%____Mostrar resultados numericos____%
set(handles.DELTA,'string',num2str(delta));
set(handles.U,'string',num2str(u));
set(handles.DELTAV,'string',num2str(deltav));
%____Seleccion de imagen a mostrar segun el tipo de vehiculo (U)____%
if u<0
axe=imread(strcat(pwd,'\sobrevirador.jpg'));
axes(handles.axes2);
imshow(axe);
vc = ((9.81*l/(-u))^0.5)*3600/1000;
set(handles.VCtext,'string','Velocidad crtica (km/h) =');
set(handles.VC,'string',num2str(vc));
end
if u>0
axe=imread(strcat(pwd,'\subvirador.jpg'));
axes(handles.axes2);
imshow(axe);
set(handles.VCtext,'string',' ');
set(handles.VC,'string',' ');
end
if u==0
axe=imread(strcat(pwd,'\neutro.jpg'));

105

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

axes(handles.axes2);
imshow(axe);
set(handles.VCtext,'string',' ');
set(handles.VC,'string',' ');
end
%____Dibujar la grafica____%
axes(handles.axes1);
N=str2num(get(handles.V,'string'));
x=0:10:N+20;
y=((l/r)+u*(x*1000/3600).^2/(9.81*r))*desmul;
plot(x,y,'r','LineWidth',2);
grid on;

% hObject handle to CALCULAR (see GCBO)


% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

% --- Executes on button press in SALIR.


function SALIR_Callback(hObject, eventdata, handles)
%____Cerrar ventana____%
close(DL)
% hObject handle to SALIR (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

% --- Executes on button press in RESET.


function RESET_Callback(hObject, eventdata, handles)
%____Boton RESET____%
set(handles.M,'String','');
set(handles.L,'String','');
set(handles.A,'String','');
set(handles.B,'String','');
set(handles.CR,'String','');
set(handles.CF,'String','');
set(handles.V,'String','');
set(handles.R,'String','');
set(handles.DELTA,'String','');
set(handles.U,'String','');
set(handles.DESMUL,'String','');
set(handles.DELTAV,'String','');

106

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

axe=imread(strcat(pwd,'\coche.jpg'));
axes(handles.axes2);
imshow(axe);
set(handles.VCtext,'string',' ');
set(handles.VC,'string',' ');
axes(handles.axes1);
X=0:180;
Y=1;
plot(X,Y,'w');
% hObject handle to RESET (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

function M_Callback(hObject, eventdata, handles)


entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS ','ERROR','modal');
set(hObject,'String',' ');
end
% hObject handle to M (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of M as text
%
str2double(get(hObject,'String')) returns contents of M as a double

% --- Executes during object creation, after setting all properties.


function M_CreateFcn(hObject, eventdata, handles)
% hObject handle to M (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));

107

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

end

function L_Callback(hObject, eventdata, handles)


entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS','ERROR','modal');
set(hObject,'String',' ');
end
% hObject handle to L (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of L as text
%
str2double(get(hObject,'String')) returns contents of L as a double

% --- Executes during object creation, after setting all properties.


function L_CreateFcn(hObject, eventdata, handles)
% hObject handle to L (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end

function A_Callback(hObject, eventdata, handles)


entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS','ERROR','modal');
set(hObject,'String',' ');
end

108

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

% hObject handle to a (see GCBO)


% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of a as text
%
str2double(get(hObject,'String')) returns contents of a as a double

% --- Executes during object creation, after setting all properties.


function A_CreateFcn(hObject, eventdata, handles)
% hObject handle to a (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end

function B_Callback(hObject, eventdata, handles)


entrada=str2double(get(hObject,'String'));

if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS','ERROR','modal');
set(hObject,'String',' ');
end
if
str2double(get(handles.L,'string'))~=str2double(get(handles.A,'string'))+str2double(get(handles.B,'str
ing'))
errordlg('El valor de la batalla debe ser: L=a+b ','ERROR','modal');
set(hObject,'String',' ');
set(handles.L,'String',' ');
set(handles.A,'String',' ');
end

109

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

% hObject handle to b (see GCBO)


% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of b as text
%
str2double(get(hObject,'String')) returns contents of b as a double

% --- Executes during object creation, after setting all properties.


function B_CreateFcn(hObject, eventdata, handles)
% hObject handle to b (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end

function CR_Callback(hObject, eventdata, handles);


entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS','ERROR','modal');
set(hObject,'String',' ');
end
% hObject handle to Cr (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of Cr as text
%
str2double(get(hObject,'String')) returns contents of Cr as a double

% --- Executes during object creation, after setting all properties.


function CR_CreateFcn(hObject, eventdata, handles)
% hObject handle to Cr (see GCBO)

110

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

% eventdata reserved - to be defined in a future version of MATLAB


% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end

function CF_Callback(hObject, eventdata, handles)


entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS','ERROR','modal');
set(hObject,'String',' ');
end
% hObject handle to Cf (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of Cf as text
%
str2double(get(hObject,'String')) returns contents of Cf as a double

% --- Executes during object creation, after setting all properties.


function CF_CreateFcn(hObject, eventdata, handles)
% hObject handle to Cf (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end

111

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

function V_Callback(hObject, eventdata, handles)


entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS','ERROR','modal');
set(hObject,'String',' ');
end
% hObject handle to V (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of V as text
%
str2double(get(hObject,'String')) returns contents of V as a double

% --- Executes during object creation, after setting all properties.


function V_CreateFcn(hObject, eventdata, handles)
% hObject handle to V (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end

function R_Callback(hObject, eventdata, handles)


entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS','ERROR','modal');
set(hObject,'String',' ');
end
% hObject handle to R (see GCBO)

112

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

% eventdata reserved - to be defined in a future version of MATLAB


% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of R as text
%
str2double(get(hObject,'String')) returns contents of R as a double

% --- Executes during object creation, after setting all properties.


function R_CreateFcn(hObject, eventdata, handles)
% hObject handle to R (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end

function DESMUL_Callback(hObject, eventdata, handles)


entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS','ERROR','modal');
set(hObject,'String',' ');
end
% hObject handle to DESMUL (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of DESMUL as text
%
str2double(get(hObject,'String')) returns contents of DESMUL as a double

% --- Executes during object creation, after setting all properties.


function DESMUL_CreateFcn(hObject, eventdata, handles)
% hObject handle to DESMUL (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called

113

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

% Hint: edit controls usually have a white background on Windows.


%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end

114

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

5.3 Dinmica longitudinal: Cdigo del programa.


function varargout = DLg(varargin)
% DLG M-file for DLg.fig
% DLG, by itself, creates a new DLG or raises the existing
% singleton*.
%
% L = DLG returns the handle to a new DLG or the handle to
% the existing singleton*.
%
% DLG('CALLBACK',hObject,eventData,handles,...) calls the local
% function named CALLBACK in DLG.M with the given input arguments.
%
% DLG('Property','Value',...) creates a new DLG or raises the
% existing singleton*. Starting from the left, property value pairs are
% applied to the GUI before DLg_OpeningFunction gets called. An
% unrecognized property name or invalid value makes property application
% stop. All inputs are passed to DLg_OpeningFcn via varargin.
%
% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one
% instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES
% Copyright 2002-2003 The MathWorks, Inc.
% Edit the above text to modify the response to help DLg
% Last Modified by GUIDE v2.5 28-Nov-2010 18:42:43
% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct('gui_Name',
mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @DLg_OpeningFcn, ...
'gui_OutputFcn', @DLg_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end
if nargout

115

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});


else
gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT

% --- Executes just before DLg is made visible.


function DLg_OpeningFcn(hObject, eventdata, handles, varargin)
% This function has no output args, see OutputFcn.
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% varargin command line arguments to DLg (see VARARGIN)
%____Cargar el array____%
global curvapar
load(strcat(pwd,'\curvapar.mat'));
% Choose default command line output for DLg
handles.output = hObject;
% Update handles structure
guidata(hObject, handles);
% UIWAIT makes DLg wait for user response (see UIRESUME)
% uiwait(handles.figure1);

% --- Outputs from this function are returned to the command line.
function varargout = DLg_OutputFcn(hObject, eventdata, handles)
% varargout cell array for returning output args (see VARARGOUT);
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Get default command line output from handles structure
varargout{1} = handles.output;

% --- Executes on button press in RESET.


function RESET_Callback(hObject, eventdata, handles)
% hObject handle to RESET (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

116

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

%____Botn RESET____%
global curvapar
x=curvapar(:,1);
q=(curvapar(:,2).*x);
y=((2*pi)/60)*q;
[P,S]=polyfit(x,y,3);
max_x=max(x);
min_x=min(x);
curvP=polyval(P,[min_x:1:max_x]);
plot(min_x:1:max_x,curvP,'w');
grid off;
set(handles.M,'String','');
set(handles.AF,'String','');
set(handles.PD,'String','');
set(handles.PT,'String','');
set(handles.L,'String','');
set(handles.H,'String','');
set(handles.D,'String','');
set(handles.RDI,'String','');
set(handles.PEND,'String','');
set(handles.DA,'String','');
set(handles.CRA,'String','');
set(handles.CRR,'String','');
set(handles.CAD,'String','');
set(handles.VMAX,'String','');
set(handles.PMX,'String','');
set(handles.POTMAX,'String','');
set(handles.WMP,'String','');
set(handles.TMAX,'String','');
set(handles.WMT,'String','');
set(handles.EJEX,'String','');
set(handles.EJEY,'String','');
set(handles.R1,'String','');
set(handles.R2,'String','');
set(handles.R3,'String','');
set(handles.R4,'String','');
set(handles.R5,'String','');
set(handles.R1T,'String','');
set(handles.R2T,'String','');
set(handles.R3T,'String','');
set(handles.R4T,'String','');
set(handles.R5T,'String','');

117

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

set(handles.REND,'String','');

% --- Executes on button press in SALIR.


function SALIR_Callback(hObject, eventdata, handles)
%____Cerrar ventana____%
close(DLg);
% hObject handle to SALIR (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

function M_Callback(hObject, eventdata, handles)


% hObject handle to M (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of M as text
%
str2double(get(hObject,'String')) returns contents of M as a double
entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS ','ERROR','modal')
set(hObject,'String',' ')
end

% --- Executes during object creation, after setting all properties.


function M_CreateFcn(hObject, eventdata, handles)
% hObject handle to M (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end

118

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

function AF_Callback(hObject, eventdata, handles)


% hObject handle to AF (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of AF as text
%
str2double(get(hObject,'String')) returns contents of AF as a double
entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS ','ERROR','modal')
set(hObject,'String',' ')
end

% --- Executes during object creation, after setting all properties.


function AF_CreateFcn(hObject, eventdata, handles)
% hObject handle to AF (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end

function PD_Callback(hObject, eventdata, handles)


% hObject handle to PD (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of PD as text
%
str2double(get(hObject,'String')) returns contents of PD as a double
entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS ','ERROR','modal')
set(hObject,'String',' ')
end

119

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

% --- Executes during object creation, after setting all properties.


function PD_CreateFcn(hObject, eventdata, handles)
% hObject handle to PD (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end
function L_Callback(hObject, eventdata, handles)
% hObject handle to L (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of L as text
%
str2double(get(hObject,'String')) returns contents of L as a double
entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS ','ERROR','modal')
set(hObject,'String',' ')
end

% --- Executes during object creation, after setting all properties.


function L_CreateFcn(hObject, eventdata, handles)
% hObject handle to L (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end

120

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

function H_Callback(hObject, eventdata, handles)


% hObject handle to L (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of L as text
%
str2double(get(hObject,'String')) returns contents of L as a double
entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS ','ERROR','modal')
set(hObject,'String',' ')
end

% --- Executes during object creation, after setting all properties.


function H_CreateFcn(hObject, eventdata, handles)
% hObject handle to L (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end

function D_Callback(hObject, eventdata, handles)


% hObject handle to D (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of D as text
%
str2double(get(hObject,'String')) returns contents of D as a double
entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS ','ERROR','modal')
set(hObject,'String',' ')

121

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

end

% --- Executes during object creation, after setting all properties.


function D_CreateFcn(hObject, eventdata, handles)
% hObject handle to D (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end
function RDI_Callback(hObject, eventdata, handles)
% hObject handle to RDI (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of RDI as text
%
str2double(get(hObject,'String')) returns contents of RDI as a double
entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS ','ERROR','modal')
set(hObject,'String',' ')
end

% --- Executes during object creation, after setting all properties.


function RDI_CreateFcn(hObject, eventdata, handles)
% hObject handle to RDI (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));

122

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

end
function PEND_Callback(hObject, eventdata, handles)
% hObject handle to PEND (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of PEND as text
%
str2double(get(hObject,'String')) returns contents of PEND as a double
entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS ','ERROR','modal')
set(hObject,'String',' ')
end
if 100<entrada
errordlg('La pendiente debe ser < 100% ','ERROR','modal');
set(hObject,'String',' ')
end

% --- Executes during object creation, after setting all properties.


function PEND_CreateFcn(hObject, eventdata, handles)
% hObject handle to PEND (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end

function DA_Callback(hObject, eventdata, handles)


% hObject handle to DA (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of DA as text
%
str2double(get(hObject,'String')) returns contents of DA as a double

123

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS ','ERROR','modal')
set(hObject,'String',' ')
end

% --- Executes during object creation, after setting all properties.


function DA_CreateFcn(hObject, eventdata, handles)
% hObject handle to DA (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end

function CRA_Callback(hObject, eventdata, handles)


% hObject handle to CRA (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of CRA as text
%
str2double(get(hObject,'String')) returns contents of CRA as a double
entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS ','ERROR','modal')
set(hObject,'String',' ')
end
if 1<entrada
errordlg('El valor del coeficiente debe ser < 1','ERROR','modal');
set(hObject,'String',' ')
end
% --- Executes during object creation, after setting all properties.
function CRA_CreateFcn(hObject, eventdata, handles)
% hObject handle to CRA (see GCBO)

124

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

% eventdata reserved - to be defined in a future version of MATLAB


% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end

function CRR_Callback(hObject, eventdata, handles)


% hObject handle to CRR (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of CRR as text
%
str2double(get(hObject,'String')) returns contents of CRR as a double
entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS ','ERROR','modal')
set(hObject,'String',' ')
end
if 1<entrada
errordlg('El valor del coeficiente debe ser < 1','ERROR','modal');
set(hObject,'String',' ')
end

% --- Executes during object creation, after setting all properties.


function CRR_CreateFcn(hObject, eventdata, handles)
% hObject handle to CRR (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));

125

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

end

function CAD_Callback(hObject, eventdata, handles)


% hObject handle to CAD (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of CAD as text
%
str2double(get(hObject,'String')) returns contents of CAD as a double
entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS ','ERROR','modal')
set(hObject,'String',' ')
end
if 1<entrada
errordlg('El valor del coeficiente debe ser < 1','ERROR','modal');
set(hObject,'String',' ')
end

% --- Executes during object creation, after setting all properties.


function CAD_CreateFcn(hObject, eventdata, handles)
% hObject handle to CAD (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end
% --- Executes during object creation, after setting all properties.
function VMAX_CreateFcn(hObject, eventdata, handles)
% hObject handle to VMAX (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called

126

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

% Hint: edit controls usually have a white background on Windows.


%
See ISPC and COMPUTER.

function POTMAX_Callback(hObject, eventdata, handles)


% hObject handle to POTMAX (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of POTMAX as text
%
str2double(get(hObject,'String')) returns contents of POTMAX as a double
entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS ','ERROR','modal')
set(hObject,'String',' ')
end

% --- Executes during object creation, after setting all properties.


function POTMAX_CreateFcn(hObject, eventdata, handles)
% hObject handle to POTMAX (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end

% --- Executes on button press in CURVAPOTENCIA.


function CURVAPOTENCIA_Callback(hObject, eventdata, handles)
% hObject handle to CURVAPOTENCIA (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
%____Cargar datos y dibujar curva de potencia____%
global curvapar
x=curvapar(:,1);
q=(curvapar(:,2).*x);
y=((2*pi)/60)*q;

127

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

[P,S]=polyfit(x,y,3);
max_x=max(x);
min_x=min(x);
curvP=polyval(P,[min_x:1:max_x]);
plot(min_x:1:max_x,curvP,'LineWidth',2);
grid on;
[P_MAX,WW_MAX_P] = max(curvP);
WMAXP=(WW_MAX_P+min_x);
set(handles.POTMAX,'string',num2str(P_MAX));
set(handles.WMP,'string',num2str(WMAXP));
set(handles.EJEX,'string','rpm');
set(handles.EJEY,'string','kW');
set(handles.NOMBRECURVA,'string','Curva de Potencia');

function PT_Callback(hObject, eventdata, handles)


% hObject handle to PT (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of PT as text
%
str2double(get(hObject,'String')) returns contents of PT as a double
entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS ','ERROR','modal')
set(hObject,'String',' ')
end
if 100~=str2double(get(handles.PT,'string'))+str2double(get(handles.PD,'string'))
errordlg('El peso traseso ms el peso delantero debe sumar el 100% ','ERROR','modal');
set(hObject,'String',' ')
set(handles.PD,'String',' ');
end
% --- Executes during object creation, after setting all properties.
function PT_CreateFcn(hObject, eventdata, handles)
% hObject handle to PT (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc

128

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end

% --- Executes on button press in CURVAPAR.


function CURVAPAR_Callback(hObject, eventdata, handles)
% hObject handle to CURVAPAR (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
%____Cargar datos y dibujar curva de par____%
global curvapar
x=curvapar(:,1);
y=curvapar(:,2);
[P,S]=polyfit(x,y,3);
max_x=max(x);
min_x=min(x);
curvT=polyval(P,[min_x:1:max_x]);
plot(min_x:1:max_x,curvT,'LineWidth',2);
grid on;
[T_MAX,WW_MAX_T] = max(curvT);
WMAXT=(WW_MAX_T+min_x);
set(handles.TMAX,'string',num2str(T_MAX));
set(handles.WMT,'string',num2str(WMAXT));
set(handles.EJEX,'string','rpm');
set(handles.EJEY,'string','Nm');
set(handles.NOMBRECURVA,'string','Curva de Par');

% --- Executes on button press in CALCULARRELACIONES.


function CALCULARRELACIONES_Callback(hObject, eventdata, handles)
% hObject handle to CALCULARRELACIONES (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
%____Lectura de datos de entrada____%
m = str2double(get(handles.M,'string'));
af = str2double(get(handles.AF,'string'));
pd = str2double(get(handles.PD,'string'));

129

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

pd=pd/100;
pt = str2double(get(handles.PT,'string'));
pt=pt/100;
l = str2double(get(handles.L,'string'));
h = str2double(get(handles.H,'string'));
d = str2double(get(handles.D,'string'));
rdi = str2double(get(handles.RDI,'string'));
pen = str2double(get(handles.PEND,'string'));
pend=asin(pen/100);
da = str2double(get(handles.DA,'string'));
cra = str2double(get(handles.CRA,'string'));
crr = str2double(get(handles.CRR,'string'));
cad = str2double(get(handles.CAD,'string'));
WMAXP = str2double(get(handles.WMP,'string'));
WMAXT = str2double(get(handles.WMT,'string'));
P_MAX = str2double(get(handles.POTMAX,'string'));
T_MAX = str2double(get(handles.TMAX,'string'));
ren = str2double(get(handles.REND,'string'));
rend=ren/100;
r=d/2;
%____Calculo de la velocidad maxima____%
[solv]=solve(strcat('(',num2str(P_MAX),'*',num2str(rend),')=(',num2str(m),'*9.81*',num2str(crr),'*x)+(0.5*',
num2str(da),'*',num2str(cra),'*',num2str(af),'*x^3)'));
v1max=isreal(solv(1));
v2max=isreal(solv(2));
v3max=isreal(solv(3));
if v1max==1
vmaxa=solv(1);
else vmaxa=0;
end;
if v2max==1
vmaxb=solv(2);
else vmaxb=0;
end;
if v3max==1
vmaxc=solv(3);
else vmaxc=0;
end;
vmax=max(double([vmaxa vmaxb vmaxc]));
vmax=vmax*3600/1000;
set(handles.VMAX,'string',num2str(vmax));
%____Calculo de la pendiente maxima____%
traccion=get(handles.TRACCION,'Value');

130

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

switch traccion
case 1
[pendmax]=solve(strcat(num2str(m),'*9.81*','(sin(x)+',num2str(crr),'*cos(x))=',num2str(cad),'*',num2
str(m),'*9.81*cos(x)*(',num2str(pd),'*',num2str(l),'+',num2str(h),'*',num2str(crr),')/(',num2str(l),'+',n
um2str(cad),'*',num2str(h),')'));
pendmax=max(double(pendmax));
pendmax=100*sin(pendmax);
set(handles.PMX,'string',num2str(pendmax));
case 2
[pendmax]=solve(strcat(num2str(m),'*9.81*','(sin(x)+',num2str(crr),'*cos(x))=',num2str(cad),'*',num2
str(m),'*9.81*cos(x)*(',num2str(pt),'*',num2str(l),'-',num2str(h),'*',num2str(crr),')/(',num2str(l),'',num2str(cad),'*',num2str(h),')'));
pendmax=max(double(pendmax));
pendmax=100*sin(pendmax);
set(handles.PMX,'string',num2str(pendmax));
case 3
[pendmax]=solve(strcat(num2str(m),'*9.81*','(sin(x)+',num2str(crr),'*cos(x))=',num2str(cad),'*',num2
str(m),'*9.81*cos(x)'));
pendmax=max(double(pendmax));
pendmax=100*sin(pendmax);
set(handles.PMX,'string',num2str(pendmax));
end
if str2double(get(handles.PMX,'string'))<str2double(get(handles.PEND,'string'))
errordlg('El vehculo no puede remontar la pendiente introducida ','ERROR','modal');
end
%____Calculo de las relaciones de transmision____%
r5t=(WMAXP*(2*pi/60)*(d/2))/(vmax*1000/3600);
r5=r5t/rdi;
set(handles.R5T,'string',num2str(r5t));
set(handles.R5,'string',num2str(r5));
r1t=((d/2)*m*9.81*(sin(asin(pendmax/100))+crr*cos(asin(pendmax/100))))/(T_MAX*rend);
r1=r1t/rdi;
set(handles.R1T,'string',num2str(r1t));
set(handles.R1,'string',num2str(r1));
k=(r1/r5)^(1/4);
set(handles.K,'string',num2str(k));
r4=k*r5;
r4t=r4*rdi;
set(handles.R4T,'string',num2str(r4t));

131

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

set(handles.R4,'string',num2str(r4));
r3=k^2*r5;
r3t=r3*rdi;
set(handles.R3T,'string',num2str(r3t));
set(handles.R3,'string',num2str(r3));
r2=k^3*r5;
r2t=r2*rdi;
set(handles.R2T,'string',num2str(r2t));
set(handles.R2,'string',num2str(r2));
%____calculo de la aceleracion____%
global curvapar
%r1
x=(curvapar(:,1)/str2double(get(handles.R1T,'string')))*(str2double(get(handles.D,'string'))/2)*(2*pi/60)*(3
600/1000);
y=curvapar(:,2)*str2double(get(handles.R1T,'string'))/(str2double(get(handles.D,'string'))/2);
[P,S]=polyfit(x,y,3);
max1_x=max(x);
min1_x=min(x);
curv1P=polyval(P,[min1_x:1:max1_x]);
[PMAX,VMAX] = max(curv1P);
V1MAX=VMAX+min1_x;
%r2
x=(curvapar(:,1)/str2double(get(handles.R2T,'string')))*(str2double(get(handles.D,'string'))/2)*(2*pi/60)*(3
600/1000);
y=curvapar(:,2)*str2double(get(handles.R2T,'string'))/(str2double(get(handles.D,'string'))/2);
[P,S]=polyfit(x,y,3);
max2_x=max(x);
min2_x=min(x);
curv2P=polyval(P,[min2_x:1:max2_x]);
[PMAX,VMAX] = max(curv2P);
V2MAX=VMAX+min2_x;
%r3
x=(curvapar(:,1)/str2double(get(handles.R3T,'string')))*(str2double(get(handles.D,'string'))/2)*(2*pi/60)*(3
600/1000);
y=curvapar(:,2)*str2double(get(handles.R3T,'string'))/(str2double(get(handles.D,'string'))/2);
[P,S]=polyfit(x,y,3);
max3_x=max(x);
min3_x=min(x);
curv3P=polyval(P,[min3_x:1:max3_x]);
[PMAX,VMAX] = max(curv3P);
V3MAX=VMAX+min3_x;
%r4

132

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

x=(curvapar(:,1)/str2double(get(handles.R4T,'string')))*(str2double(get(handles.D,'string'))/2)*(2*pi/60)*(3
600/1000);
y=curvapar(:,2)*str2double(get(handles.R4T,'string'))/(str2double(get(handles.D,'string'))/2);
[P,S]=polyfit(x,y,3);
max4_x=max(x);
min4_x=min(x);
curv4P=polyval(P,[min4_x:1:max4_x]);
[PMAX,VMAX] = max(curv4P);
V4MAX=VMAX+min4_x;
%r5
x=(curvapar(:,1)/str2double(get(handles.R5T,'string')))*(str2double(get(handles.D,'string'))/2)*(2*pi/60)*(3
600/1000);
y=curvapar(:,2)*str2double(get(handles.R5T,'string'))/(str2double(get(handles.D,'string'))/2);
[P,S]=polyfit(x,y,3);
max5_x=max(x);
min5_x=min(x);
curv5P=polyval(P,[min5_x:1:max5_x]);
[PMAX,VMAX] = max(curv5P);
V5MAX=VMAX+min5_x;
fda1=T_MAX*r1t/(d/2)(str2double(get(handles.M,'string'))*9.81*(str2double(get(handles.CRR,'string'))*cos(pend)+sin(pend
))+0.5*str2double(get(handles.DA,'string'))*str2double(get(handles.CRA,'string'))*str2double(get(ha
ndles.AF,'string'))*(V1MAX*1000/3600).^2);
fm1=1.04+0.0025*r1t^2;
a1=fda1/(fm1*m);
set(handles.A1,'string',num2str(a1));
fda2=T_MAX*r2t/(d/2)(str2double(get(handles.M,'string'))*9.81*(str2double(get(handles.CRR,'string'))*cos(pend)+sin(pend
))+0.5*str2double(get(handles.DA,'string'))*str2double(get(handles.CRA,'string'))*str2double(get(ha
ndles.AF,'string'))*(V2MAX*1000/3600).^2);
fm2=1.04+0.0025*r2t^2;
a2=fda2/(fm2*m);
set(handles.A2,'string',num2str(a2));
fda3=T_MAX*r3t/(d/2)(str2double(get(handles.M,'string'))*9.81*(str2double(get(handles.CRR,'string'))*cos(pend)+sin(pend
))+0.5*str2double(get(handles.DA,'string'))*str2double(get(handles.CRA,'string'))*str2double(get(ha
ndles.AF,'string'))*(V3MAX*1000/3600).^2);
fm3=1.04+0.0025*r3t^2;
a3=fda3/(fm3*m);
set(handles.A3,'string',num2str(a3));
fda4=T_MAX*r4t/(d/2)(str2double(get(handles.M,'string'))*9.81*(str2double(get(handles.CRR,'string'))*cos(pend)+sin(pend

133

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

))+0.5*str2double(get(handles.DA,'string'))*str2double(get(handles.CRA,'string'))*str2double(get(ha
ndles.AF,'string'))*(V4MAX*1000/3600).^2);
fm4=1.04+0.0025*r4t^2;
a4=fda4/(fm4*m);
set(handles.A4,'string',num2str(a4));
fda5=T_MAX*r5t/(d/2)(str2double(get(handles.M,'string'))*9.81*(str2double(get(handles.CRR,'string'))*cos(pend)+sin(pend
))+0.5*str2double(get(handles.DA,'string'))*str2double(get(handles.CRA,'string'))*str2double(get(ha
ndles.AF,'string'))*(V5MAX*1000/3600).^2);
fm5=1.04+0.0025*r5t^2;
a5=fda5/(fm5*m);
set(handles.A5,'string',num2str(a5));
function REND_Callback(hObject, eventdata, handles)
% hObject handle to REND (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of REND as text
%
str2double(get(hObject,'String')) returns contents of REND as a double
entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS ','ERROR','modal')
set(hObject,'String',' ')
end
if 100<entrada
errordlg('El rendimiento debe ser < 100% ','ERROR','modal');
set(hObject,'String',' ')
end

% --- Executes during object creation, after setting all properties.


function REND_CreateFcn(hObject, eventdata, handles)
% hObject handle to REND (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));

134

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

end
% --- Executes during object creation, after setting all properties.
function PMX_CreateFcn(hObject, eventdata, handles)
% hObject handle to PMX (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called

% --- Executes on selection change in TRACCION.


function TRACCION_Callback(hObject, eventdata, handles)
% hObject handle to TRACCION (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: contents = get(hObject,'String') returns TRACCION contents as cell array
%
contents{get(hObject,'Value')} returns selected item from TRACCION

% --- Executes during object creation, after setting all properties.


function TRACCION_CreateFcn(hObject, eventdata, handles)
% hObject handle to TRACCION (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: popupmenu controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end
% --- Executes on button press in DPOTENCIA.
function DPOTENCIA_Callback(hObject, eventdata, handles)
% hObject handle to DPOTENCIA (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
%____Representacion del diagrama de potencia____%
global curvapar
x=(curvapar(:,1)/str2double(get(handles.R1T,'string')))*(str2double(get(handles.D,'string'))/2)*(2*pi/60)*(3
600/1000);
z=curvapar(:,1);
q=(curvapar(:,2).*z);

135

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

y=((2*pi)/60)*q;
[P,S]=polyfit(x,y,3);
max_x=max(x);
min_x=min(x);
curvP=polyval(P,[min_x:1:max_x]);
plot(min_x:1:max_x,curvP,'g','LineWidth',2);
grid on;
hold on;
x=(curvapar(:,1)/str2double(get(handles.R2T,'string')))*(str2double(get(handles.D,'string'))/2)*(2*pi/60)*(3
600/1000);
z=curvapar(:,1);
q=(curvapar(:,2).*z);
y=((2*pi)/60)*q;
[P,S]=polyfit(x,y,3);
max_x=max(x);
min_x=min(x);
curvP=polyval(P,[min_x:1:max_x]);
plot(min_x:1:max_x,curvP,'r','LineWidth',2);
hold on;
x=(curvapar(:,1)/str2double(get(handles.R3T,'string')))*(str2double(get(handles.D,'string'))/2)*(2*pi/60)*(3
600/1000);
z=curvapar(:,1);
q=(curvapar(:,2).*z);
y=((2*pi)/60)*q;
[P,S]=polyfit(x,y,3);
max_x=max(x);
min_x=min(x);
curvP=polyval(P,[min_x:1:max_x]);
plot(min_x:1:max_x,curvP,'b','LineWidth',2);
hold on;
x=(curvapar(:,1)/str2double(get(handles.R4T,'string')))*(str2double(get(handles.D,'string'))/2)*(2*pi/60)*(3
600/1000);
z=curvapar(:,1);
q=(curvapar(:,2).*z);
y=((2*pi)/60)*q;
[P,S]=polyfit(x,y,3);
max_x=max(x);
min_x=min(x);
curvP=polyval(P,[min_x:1:max_x]);
plot(min_x:1:max_x,curvP,'k','LineWidth',2);
hold on;
x=(curvapar(:,1)/str2double(get(handles.R5T,'string')))*(str2double(get(handles.D,'string'))/2)*(2*pi/60)*(3
600/1000);

136

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

z=curvapar(:,1);
q=(curvapar(:,2).*z);
y=((2*pi)/60)*q;
[P,S]=polyfit(x,y,3);
max_x=max(x);
min_x=min(x);
curvP=polyval(P,[min_x:1:max_x]);
plot(min_x:1:max_x,curvP,'m','LineWidth',2);
hold on;
x=0:250;
pen = str2double(get(handles.PEND,'string'));
pend=asin(pen/100);
y=str2double(get(handles.M,'string'))*9.81*(str2double(get(handles.CRR,'string'))*cos(pend)+sin(pend))*x/
3.6+0.5*str2double(get(handles.DA,'string'))*str2double(get(handles.CRA,'string'))*str2double(get(h
andles.AF,'string'))*(x/3.6).^3;
plot(x,y,'LineWidth',2);
hold off;
set(handles.EJEX,'string','km/h');
set(handles.EJEY,'string','kw');
set(handles.NOMBRECURVA,'string','Diagrama de potencias');
% --- Executes on button press in DTRACCION.
function DTRACCION_Callback(hObject, eventdata, handles)
% hObject handle to DTRACCION (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
%____Representacin del diagrama de traccion____%
global curvapar
x=(curvapar(:,1)/str2double(get(handles.R1T,'string')))*(str2double(get(handles.D,'string'))/2)*(2*pi/60)*(3
600/1000);
y=curvapar(:,2)*str2double(get(handles.R1T,'string'))/(str2double(get(handles.D,'string'))/2);
[P,S]=polyfit(x,y,3);
max_x=max(x);
min_x=min(x);
curvP=polyval(P,[min_x:1:max_x]);
plot(min_x:1:max_x,curvP,'g','LineWidth',2);
grid on;
hold on;
x=(curvapar(:,1)/str2double(get(handles.R2T,'string')))*(str2double(get(handles.D,'string'))/2)*(2*pi/60)*(3
600/1000);
y=curvapar(:,2)*str2double(get(handles.R2T,'string'))/(str2double(get(handles.D,'string'))/2);
[P,S]=polyfit(x,y,3);
max_x=max(x);

137

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

min_x=min(x);
curvP=polyval(P,[min_x:1:max_x]);
plot(min_x:1:max_x,curvP,'r','LineWidth',2);
hold on;
x=(curvapar(:,1)/str2double(get(handles.R3T,'string')))*(str2double(get(handles.D,'string'))/2)*(2*pi/60)*(3
600/1000);
y=curvapar(:,2)*str2double(get(handles.R3T,'string'))/(str2double(get(handles.D,'string'))/2);
[P,S]=polyfit(x,y,3);
max_x=max(x);
min_x=min(x);
curvP=polyval(P,[min_x:1:max_x]);
plot(min_x:1:max_x,curvP,'b','LineWidth',2);
hold on;
x=(curvapar(:,1)/str2double(get(handles.R4T,'string')))*(str2double(get(handles.D,'string'))/2)*(2*pi/60)*(3
600/1000);
y=curvapar(:,2)*str2double(get(handles.R4T,'string'))/(str2double(get(handles.D,'string'))/2);
[P,S]=polyfit(x,y,3);
max_x=max(x);
min_x=min(x);
curvP=polyval(P,[min_x:1:max_x]);
plot(min_x:1:max_x,curvP,'k','LineWidth',2);
hold on;
x=(curvapar(:,1)/str2double(get(handles.R5T,'string')))*(str2double(get(handles.D,'string'))/2)*(2*pi/60)*(3
600/1000);
y=curvapar(:,2)*str2double(get(handles.R5T,'string'))/(str2double(get(handles.D,'string'))/2);
[P,S]=polyfit(x,y,3);
max_x=max(x);
min_x=min(x);
curvP=polyval(P,[min_x:1:max_x]);
plot(min_x:1:max_x,curvP,'m','LineWidth',2);
hold on;
x=0:250;
pen = str2double(get(handles.PEND,'string'));
pend=asin(pen/100);
y=str2double(get(handles.M,'string'))*9.81*(str2double(get(handles.CRR,'string'))*cos(pend)+sin(pend))+0.
5*str2double(get(handles.DA,'string'))*str2double(get(handles.CRA,'string'))*str2double(get(handles
.AF,'string'))*(x*1000/3600).^2;
plot(x,y,'r','LineWidth',2);
hold on;
x=0:250;
pend=asin(50/100);

138

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

y=str2double(get(handles.M,'string'))*9.81*(str2double(get(handles.CRR,'string'))*cos(pend)+sin(pend))+0.
5*str2double(get(handles.DA,'string'))*str2double(get(handles.CRA,'string'))*str2double(get(handles
.AF,'string'))*(x*1000/3600).^2;
plot(x,y,'LineWidth',2);
hold on;
x=0:250;
pend=asin(25/100);
y=str2double(get(handles.M,'string'))*9.81*(str2double(get(handles.CRR,'string'))*cos(pend)+sin(pend))+0.
5*str2double(get(handles.DA,'string'))*str2double(get(handles.CRA,'string'))*str2double(get(handles
.AF,'string'))*(x*1000/3600).^2;
plot(x,y,'LineWidth',2);
hold on;
x=0:250;
pend=asin(0/100);
y=str2double(get(handles.M,'string'))*9.81*(str2double(get(handles.CRR,'string'))*cos(pend)+sin(pend))+0.
5*str2double(get(handles.DA,'string'))*str2double(get(handles.CRA,'string'))*str2double(get(handles
.AF,'string'))*(x*1000/3600).^2;
plot(x,y,'LineWidth',2);
hold off;
set(handles.EJEX,'string','km/h');
set(handles.EJEY,'string','N');
set(handles.NOMBRECURVA,'string','Diagrama de traccion');

139

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

5.4 Dinmica vertical: Cdigo del programa.


function varargout = DV(varargin)
% DV M-file for DV.fig
% DV, by itself, creates a new DV or raises the existing
% singleton*.
%
% H = DV returns the handle to a new DV or the handle to
% the existing singleton*.
%
% DV('CALLBACK',hObject,eventData,handles,...) calls the local
% function named CALLBACK in DV.M with the given input arguments.
%
% DV('Property','Value',...) creates a new DV or raises the
% existing singleton*. Starting from the left, property value pairs are
% applied to the GUI before DV_OpeningFunction gets called. An
% unrecognized property name or invalid value makes property application
% stop. All inputs are passed to DV_OpeningFcn via varargin.
%
% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one
% instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES
% Copyright 2002-2003 The MathWorks, Inc.
% Edit the above tau to modify the response to help DV
% Last Modified by GUIDE v2.5 28-Nov-2010 12:16:57
% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct('gui_Name',
mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @DV_OpeningFcn, ...
'gui_OutputFcn', @DV_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end
if nargout

140

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});


else
gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT

% --- Executes just before DV is made visible.


function DV_OpeningFcn(hObject, eventdata, handles, varargin)
% This function has no output args, see OutputFcn.
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% varargin command line arguments to DV (see VARARGIN)
axes(handles.axes1);
handles.ejex=0:pi/360:50;
% Choose default command line output for DV
handles.output = hObject;
% Update handles structure
guidata(hObject, handles);
% UIWAIT makes DV wait for user response (see UIRESUME)
% uiwait(handles.figure1);

% --- Outputs from this function are returned to the command line.
function varargout = DV_OutputFcn(hObject, eventdata, handles)
% varargout cell array for returning output args (see VARARGOUT);
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Get default command line output from handles structure
varargout{1} = handles.output;

% --- Executes on button press in RESET.


function RESET_Callback(hObject, eventdata, handles)
% hObject handle to RESET (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

141

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

%____Boton RESET____%
set(handles.M,'String','');
set(handles.C,'String','');
set(handles.K,'String','');
set(handles.WN,'String','');
set(handles.E,'String','');
set(handles.TAU,'string','');
set(handles.F,'string','');
set(handles.SENALENTRADA,'value',1);
axes(handles.axes3);
X=0:4;
Y=1;
plot(X,Y,'w');
axes(handles.axes2);
X=0:50;
Y=0;
plot(X,Y,'w');
axes(handles.axes1);
X=0:50;
Y=0;
plot(X,Y,'w');

% --- Executes on button press in CALCULAR.


function CALCULAR_Callback(hObject, eventdata, handles)
% hObject handle to CALCULAR (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
%____Lectura de datos de entrada____%
m = str2double(get(handles.M,'string'));
c = str2double(get(handles.C,'string'));
k = str2double(get(handles.K,'string'));
f = str2double(get(handles.F,'string'));
%____Calculos____%
wn = (k/m)^.5;
e = c/(2*m*wn);
set(handles.WN,'string',num2str(wn));
set(handles.E,'string',num2str(e));
fun =get(handles.SENALENTRADA,'Value');
switch fun
case 2

142

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

w=2*pi*f;
tau=w/wn;
set(handles.TAU,'string',num2str(tau));
axes(handles.axes3);
x=0:0.01:4;
y=((1+4*e^2*x.^2)./((1-x.^2).^2+4*e^2*x.^2)).^0.5;
plot(x,y,'r','LineWidth',2);
grid on;
axes(handles.axes1);
y1=sin(2*pi*str2double(get(handles.F,'string'))*handles.ejex);
plot(handles.ejex,y1,'LineWidth',2);
axis([0 50 -1.5 1.5]);
grid on;
hold off;
axes(handles.axes2);
syms t y
solu1=@(t,y)([y(2); 2*e*wn*(2*(cos(2*pi*f*t))*pi*f)+wn^2*(sin(2*pi*f*t))-wn^2*y(1)-2*e*wn*y(2)]);
[T,Y]=ode45(solu1,[0 50],[0;0]);
plot(T,Y(:,1),'LineWidth',2);
grid on;
hold off;

case 3
w=2*pi*f;
tau=w/wn;
set(handles.TAU,'string',num2str(tau));
axes(handles.axes3);
X=0:4;
Y=1;
plot(X,Y,'w');
axes(handles.axes1);
y2=sin(2*pi*str2double(get(handles.F,'string'))*handles.ejex)+cos(3*pi*str2double(get(handles.F,'string'))*
handles.ejex);
plot(handles.ejex,y2,'LineWidth',2);
axis([0 50 min(y2)-0.5 max(y2)+0.5 ]);
grid on;
hold off;
axes(handles.axes2);
solu2=@(t,y)([y(2); 2*e*wn*(2*cos(2*pi*f*t)*pi*f3*sin(3*pi*f*t)*f*pi)+wn^2*(sin(2*pi*f*t)+cos(3*pi*f*t))-wn^2*y(1)-2*e*wn*y(2)]);
[T,Y]=ode45(solu2,[0,50],[1;0]);
plot(T,Y(:,1),'LineWidth',2);

143

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

grid on;
hold off;
case 4
set(handles.TAU,'string','');
axes(handles.axes3);
X=0:4;
Y=1;
plot(X,Y,'w');
axes(handles.axes1);
x=linspace(0,1,600);
x=x';
y3=0.15*randn(600,1)+sin(8*pi*x)+sin(3*pi*x)+sin(6*pi*x);
[P,S]=polyfit(x,y3,10);
curvP=polyval(P,x);
plot(x,curvP,'LineWidth',2);
grid on;
hold off;
axes(handles.axes2);
syms t y
solu2=@(t,y)([y(2);
2*e*wn*(10*P(1)*t^9+9*P(2)*t^8+8*P(3)*t^7+7*P(4)*t^6+6*P(5)*t^5+5*P(6)*t^4+4*P(7)*t^3+3*P(
8)*t^2+2*P(9)*t+P(10))+wn^2*(P(1)*t^10+P(2)*t^9+P(3)*t^8+P(4)*t^7+P(5)*t^6+P(6)*t^5+P(7)*t^4
+P(8)*t^3+P(9)*t^2+P(10)*t+P(11))-wn^2*y(1)-2*e*wn*y(2)]);
[T,Y]=ode45(solu2,[0,1],[curvP(1);0]);
plot(T,Y(:,1),'LineWidth',2);
grid on;
hold off;
end
% --- Executes on button press in SALIR.
function SALIR_Callback(hObject, eventdata, handles)
%____Cerrar ventana____%
close(DV);
% hObject handle to SALIR (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

144

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

function M_Callback(hObject, eventdata, handles)


% hObject handle to M (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of M as tau
%
str2double(get(hObject,'String')) returns contents of M as a double
entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS ','ERROR','modal');
set(hObject,'String',' ');
end
% --- Executes during object creation, after setting all properties.
function M_CreateFcn(hObject, eventdata, handles)
% hObject handle to M (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end

function C_Callback(hObject, eventdata, handles)


% hObject handle to C (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of C as tau
%
str2double(get(hObject,'String')) returns contents of C as a double
entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS ','ERROR','modal');
set(hObject,'String',' ');
end
% --- Executes during object creation, after setting all properties.

145

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

function C_CreateFcn(hObject, eventdata, handles)


% hObject handle to C (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end

function K_Callback(hObject, eventdata, handles)


% hObject handle to K (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of K as tau
%
str2double(get(hObject,'String')) returns contents of K as a double
entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS ','ERROR','modal');
set(hObject,'String',' ');
end
% --- Executes during object creation, after setting all properties.
function K_CreateFcn(hObject, eventdata, handles)
% hObject handle to K (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end
% --- Executes on selection change in F.

146

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

function F_Callback(hObject, eventdata, handles)


% hObject handle to F (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
entrada=str2double(get(hObject,'String'));
if isnan(entrada)
errordlg('SOLO PUEDE INTRODUCIR VALORES NUMERICOS ','ERROR','modal');
set(hObject,'String',' ');
end
% handles structure with handles and user data (see GUIDATA)
% Hints: contents = get(hObject,'String') returns F contents as cell array
%
contents{get(hObject,'Value')} returns selected item from F
% --- Executes during object creation, after setting all properties.
function F_CreateFcn(hObject, eventdata, handles)
% hObject handle to F (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: popupmenu controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end

% --- Executes during object creation, after setting all properties.


function E_CreateFcn(hObject, eventdata, handles)
% hObject handle to E (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called

% --- Executes during object creation, after setting all properties.


function WN_CreateFcn(hObject, eventdata, handles)
% hObject handle to WN (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called

147

ANEXOS

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

function SENALENTRADA_Callback(hObject, eventdata, handles)


% hObject handle to SENALENTRADA (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
%___Desactivar boton de frecuencia cuando la seal es aleatoria____%
fun =get(handles.SENALENTRADA,'Value');
switch fun
case 1
set(handles.F,'enable','on')
case 2
set(handles.F,'enable','on')
case 3
set(handles.F,'enable','on')
case 4
set(handles.F,'enable','off')
end
% Hints: get(hObject,'String') returns contents of SENALENTRADA as text
%
str2double(get(hObject,'String')) returns contents of SENALENTRADA as a double

% --- Executes during object creation, after setting all properties.


function SENALENTRADA_CreateFcn(hObject, eventdata, handles)
% hObject handle to SENALENTRADA (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
%
See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end

148

BIBLIOGRAFA

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

Captulo VI: Bibliografa.

149

BIBLIOGRAFA

HERRAMIENTA DE SIMULACIN DE LA DINMICA DE VEHCULOS AUTOMVILES

6 BIBLIOGRAFA.
Apuntes de Ingeniera del Transporte.
Autor: Francisco Javier Alonso Snchez.
Un curso de automocin.
Autor: Publio Pintado.
Tratado sobre automviles: La dinmica del automvil.
Autor: Jos Font Mezquita.
www.mecanicavirtual.org.
Amortiguadores y suspensin. Manual de automocin.
Autor: Juan Alberdi Urbieta. Universidad de Navarra.
Ingeniera del transporte. 2008.
Autor: F. Aparicio.
Aprenda Matlab 7.0. Dic. 2005.
Autor: Javier Garca de Jaln, Jos Ignacio Rodrguez, Jess Vidal.
Universidad Politcnica de Madrid.
Manual de interfaz grfica de usuario en Matlab.
Autor: Diego Orlando Barragn Guerrero.
Creacin de Interfaces Grficas de Usuario (GUI) con Matlab.
Autor: Gonzalo Fernndez de Crdoba Martos.

150

Das könnte Ihnen auch gefallen