La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Trabajo de sistemas multicuerpo: Vehículo con suspensiones MacPherson y de cinco barras 1 Virginia Álvarez Sánchez 06471 Alberto de la Peña Laguna 09525.

Presentaciones similares


Presentación del tema: "Trabajo de sistemas multicuerpo: Vehículo con suspensiones MacPherson y de cinco barras 1 Virginia Álvarez Sánchez 06471 Alberto de la Peña Laguna 09525."— Transcripción de la presentación:

1 Trabajo de sistemas multicuerpo: Vehículo con suspensiones MacPherson y de cinco barras 1 Virginia Álvarez Sánchez Alberto de la Peña Laguna Aarón Paz Martínez Miguel Peñalba M07076

2 Índice Práctica 4. Descripción, Problemas y Soluciones y Ejecución Práctica 6. Descripción, Problemas y Soluciones y Ejecución Práctica 7. Descripción, Problemas y Soluciones y Ejecución Conclusiones 2

3 Práctica 4. Ejercicio 1 Consiste en la simulación cinemática de la suspensión MacPherson(MP) comparando los métodos de Newton-Raphson (NR) con Newton-Raphson modificado(NR-mod). Dificultades de programación con la sentencia if al compararla con un tipo de dato string, dado que if compara enteros. Nuestra solución ha sido asignar un entero a cada valor del string y comparar con dicho entero en el if. Se habría simplificado y mejorado la programación mediante la funcion isequal, que permite comparar cadenas de caracteres. La comparación de tiempos y número de iteraciones entre NR y NR-mod es la siguiente teniendo en cuenta que nuestro procesador es Intel Centrino a 2,2 GHz resulta: NR tiempo: (605 iteraciones), Nrmod tiempo: (834 iteraciones) Es decir, el método modificado ejecuta un mayor número de pasos, pero al ser el trazado de paralelas más rápido que el cálculo de tangentes llega al resultado final antes. 3

4 Práctica 4. Ejercicio 2 (1/2) Consiste en la construcción del modelo de una suspensión MacPherson completa. Dada nuestra inexperiencia en este momento del trabajo, nuestra numeración no era la apropiada, adoptando finalmente una numeración que desglosara desplazamientos y simetrías, lo cual nos ha permitido detectar pequeños errores con mayor facilidad. Por ejemplo, el punto 15 es el 4+np, y el vector 5 es el 1+nv. En cuanto a la pregunta para nota de hacer rodar las ruedas en el mismo sentido, llegamos a la conclusión ya en esta práctica de que hay que cambiar el sentido del vector eje de la rueda, procediendo con éxito hasta ahora. 4

5 Práctica 4. Suspensión Delantera MP 5

6 Práctica 4. Ejercicio 3 (1/2) Se trata de simular dinámicamente una suspensión trasera de 5 puntos. Nuestra primera toma de contacto con los integradores no supuso grandes problemas. La comparación de los tiempos de ejecución de los integradores ode113 y ode45 con el procesador Intel Pentium Core Duo 1.86 GHz es: ode113 tiempo: 5.46 s ode45 tiempo: s Al calcular la derivada del vector de estado cambiando el vector de estado a integrar hemos tenido problemas conceptuales, aprendiendo las diferencias entre coordenadas fijas y libres, y en las libres, entre dependientes e independientes. 6

7 Práctica4. Suspensión Trasera 7

8 Práctica 4. Ejercicio 4 (1/4) Se trata de modelizar el chasis de un vehículo sobre una plataforma Stewart. La problemática de este ejercicio ha sido variada. Al importar los puntos de las suspensiones delantera y trasera (haciendo también el simétrico de ésta) y ponerlos consecutivos con el hexapod y entre ellos mismos hemos tenido que ser ordenados y aun así hemos tenido pequeños errores. Ha habido que desplazar también los vectores, las distancias y los ángulos en q. En cuanto al diseño de nuestro chasis hemos aprovechado puntos de ambas suspensiones y hemos creado segmentos entre ellos, añadiendo un punto en el centro, que es el único propio del chasis, y en el que definimos una base vectorial, quedándonos una figura semejante a un caracol. 8

9 Práctica 4. Chasis sobre Hexapod 9

10 Práctica 4. Ejercicio 4 (3/4) El centro de nuestros problemas han sido las ecuaciones de restricción. Éstas las agrupamos en tres bloques: las que definen a la base como sólido rígido (6), las que obligan al movimiento solidario del chasis y de la plataforma (3) y las que fijan los segmentos y vectores del chasis a la base(). En este punto es en el que hemos comenzado a hacer un gran uso del Debugger, realizando un proceso de depuración del programa, que ha sido determinante para el perfeccionamiento de las ecuaciones de restricción. Hemos continuado procediendo con el Debugger en todos los ejercicios posteriores. Mediante la depuración identificamos qué restricciones no se cumplían y nos dimos cuenta que la restricción 1005 que fija el segmento que une el punto medio de la MP y el del chasis a la base era innecesaria, al formar parte dicho segmento de la base vectorial definida anteriormente, la cual ya poseía una restricción de tipo 1000 para el segmento en cuestión. 10

11 Práctica 4. Ejercicio 4 (4/4) En las ecuaciones de restricción referentes a las coordenadas relativas DIST y ANGLES encontramos una dificultad conceptual con el valor ipos, el cual aprendimos que hace referencia a las posiciones en q de las filas de dichas matrices. Al fijar los segmentos del chasis encontramos un problema común a todas las restricciones 1005, el cual descubrimos empleando breakpoints condicionales en la función formFiPU4. Base [rj-ri| um| un] rk-rl= (rj-ri)*c1+um*c2+un*c3 La ecuación que hemos empleado primero: [1005 i j k l m n 0 0 c1 c2 c3 ] La ecuación programada en formFiPU4: [1005 i j l k m n 0 0 c1 c2 c3 ] Finalmente, el programa funcionó adecuadamente. Ejecutamos 11

12 Práctica 6 (1/4) 12 En el primer Ejercicio, se trataba de montar el vehículo completo y comprobar que tiene 15 grados de libertad. En esta práctica organizamos la información de las suspensiones y chasis en ficheros Geometrys. Tuvimos pues que trasladar las suspensiones a sus correspondientes posiciones. Definimos las variables alejdel, alargdel y elevdel Suspensión delantera: izquierda (a, b, rw) y derecha(a, b, rw) Nos apoyamos en el punto 6 del centro de la rueda para trasladar todos los puntos, excepto el 11 del centro de la barra de dirección. También lo usamos de referencia, para situar el punto 7 a cota 0, pues es el extremo de la rueda. Suspensión Trasera: izquierda (-a, b, rw) y derecha (-a,-b, rw) Nos apoyamos en el punto 11 del centro de la rueda para el traslado, y así el punto 13 del extremo de la rueda estará a cota 0 como queremos

13 Práctica 6. Coche Completo (2/4) 13

14 Práctica 6 (3/4) 14 Con la introducción de la estructura displ pasamos a una programación más ordenada, y así parametrizamos nuestros Geometrys en función de displ.P, displ.U, displ.DIST, displ.ANGLES. De esta manera la suspensión trasera se coloca a continuación de la delantera. A la hora de definir los vectores de los ejes de las ruedas, concretamente de la trasera, tuvimos serios problemas a la hora de duplicarlos: En un principio cambiamos el signo de la componente x para que los vectores tengan el mismo sentido, y así medir los ángulos igual en un lado y en otro. En este punto, se violaban numerosas ecuaciones de restricción, relacionadas con ángulos y los coeficientes independientes. Nuestro error fue considerar simetría axial en lugar de simetría central. Cuestión que corregimos añadiendo a lo que teníamos la simetría respecto a z, solucionando así las ecuaciones que fallaban.

15 Práctica 6 (4/4) 15 En el segundo ejercicio se realiza la primera ejecución dinámica, con el objeto de calcular la posición de equilibrio estática en el ejercicio 3, a partir de la cual realizamos las simulaciones dinámicas Para la programación de la función carForces1.m tuvimos que consultar libros de Teoría de Vehículos, para saber como actúan las fuerzas de amortiguamiento. Q=-k*v Como último problema con las ecuaciones de restricción, cabe mencionar que gracias de nuevo al Debugger, descubrimos que la restricción de vector unitario(1001) del vector U(1) de la MP estaba repetida en el chasis. Faltando por tanto la restricción de vector unitario para el vector U(4). Además el vector 4 forma parte de la base del chasis. Debido a esto, las ecuaciones de restricción que fijan los segmentos del chasis a la base (1005) se corrigieron, utilizando el vector U(4) en lugar del U(1). Finalmente, el programa funcionó adecuadamente. Ejecutamos

16 16 Histórico

17 17 Práctica 7 (1/5) El programa principal que controla la simulación es VehicleDinamicMain1.m. Se realizará en él la integración numérica de las ecuaciones diferenciales del movimiento. Primeramente seleccionamos el integrador ode113, por resultar menos exigente. No obstante, una vez verificado el funcionamiento, utilizamos el Runge-Kutta4. Una parte importante de este trabajo es completar el fichero CarModel01.m, llamando a cada uno de los ficheros que contiene los datos de cada uno de los componentes del vehículo. Este fichero contiene también importantes comprobaciones que valoran los tamaños y rangos de cada uno de los componentes con los que tendrían que tener, así nos aseguramos del correcto ensamblado del vehículo y de sus ecuaciones de restricción.

18 18 Práctica 7 (2/5) En VehicleDinamicMain1.m realizamos la integración numérica de las ecuaciones diferenciales del movimiento. Primeramente seleccionamos el integrador ode113, por resultar menos exigente. No obstante, una vez verificado el funcionamiento, utilizamos el Runge-Kutta4. Hemos recurrido frecuentemente a la función CarModel01.m, pues esta función contiene importantes comprobaciones que valoran los tamaños de q y rangos de cada una de las jacobianas de las ecuaciones de restricción. Nuestra mayor problemática ha sido la programación de derivRindex3 porque su dificultad conceptual nos ha hecho revisar la teoría en numerosas ocasiones. Realizamos muchas pruebas con el fin de aislar la fuente del problema. La prueba definitiva es que con todos nuestros ficheros y con la función derivRindex.p, la simulación funciona. Para las fuerzas en los amortiguadores la integración se aproximaba mediante la regla Trapezoidal Compuesta y cambiamos la programación para que se haga mediante la regla de Simpson Compuesta.

19 19 Ejecuciones Dinámicas Acelerando Frenando

20 20 Vehículo girando y frenando

21 21 Balance de Energías El balance energético no es completamente satisfactorio, aunque es evidente que la solución al error es restar las fuerzas no conservativas, que son precisamente las que alteran la estabilidad de la energía mecánica. De hacerlo se tendría que conservar la energía total, cosa que no conseguimos al no ejecutarse apropiadamente el programa.

22 22 Conclusiones Nuestra conclusión personal del trabajo es satisfactoria, dada nuestra escasa experiencia con Matlab antes de iniciar el curso. Durante las semanas de trabajo hemos encontrado diversas dificultades, de las que hemos salido haciendo usos de distintos comandos de Matlab (Debugger, Help, workspace…), así como de la teoría de clase y de las tutorías. Finalmente hemos decidido utilizar la herramienta Profiler, con la que detectamos en qué función gasta más tiempo de ejecución Matlab. Evidentemente, el tiempo total máximo empleado es el de VehicleDynamicMain1.m. Sin embargo, con la opción self time comprobamos que la mayor parte del tiempo de ejecución se emplea en las funciones gráficas y en el derivRindex3, que son las funciones que deberíamos intentar optimizar.

23 23 Total time vs Self time


Descargar ppt "Trabajo de sistemas multicuerpo: Vehículo con suspensiones MacPherson y de cinco barras 1 Virginia Álvarez Sánchez 06471 Alberto de la Peña Laguna 09525."

Presentaciones similares


Anuncios Google