Full text
Equation Chapter 1 Section 1 Proyecto Fin de Máster Ingeniería en Electrónica, Automática y Robótica Desarrollo de métodos para la estimación del ángulo de deslizamiento lateral en vehículos Dpto. de Ingeniería Electrónica Escuela Técnica Superior de Ingeniería Universidad de Sevilla Autor: Adrián Antonio Quijije Hernández Tutor: Carlos Bordons Alba Sevilla, 2020
iii Proyecto Fin de Máster Ingeniería en Electrónica, Automática y Robótica Desarrollo de métodos para la estimación del ángulo de deslizamiento lateral en vehículos Autor: Adrián Antonio Quijije Hernández Tutor: Carlos Bordons Alba Catedrático Dpto. de Ingeniería de Sistemas y Automática Escuela Técnica Superior de Ingeniería Universidad de Sevilla Sevilla, 2020
v Proyecto Fin de Máster: Desarrollo de métodos para la estimación del ángulo de deslizamiento lateral en vehículos Autor: Adrián Antonio Quijije Hernández Tutor: Carlos Bordons Alba El tribunal nombrado para juzgar el Proyecto arriba indicado, compuesto por los siguientes miembros: Presidente: Vocales: Secretario: Acuerdan otorgarle la calificación de: Sevilla, 2020 El Secretario del Tribunal
vii A mi familia A mis amigos A mis profesores A mis compañeros
ix Agradecimiento Este proyecto supone el final de esta etapa de estudios y desarrollo personal cargado de experiencias y de personas para recordar. En primer lugar, me gustaría agradecer el cariño y ánimo de mis padres y mi hermana que a la distancia me dieron apoyo. En segundo lugar, a mis compañeros y amigos, con los que compartí buenas experiencias. Por último y no menos importante, me gustaría agradecer a mi tutor, Carlos Bordons Alba, por la oportunidad para realizar este proyecto.
5.6.1 Simulaciones 45 5.7 Modelo basado en Redes Neuronales 50 5.7.1 Experimento 51 Resumen 54 6 Experimento con datos del vehículo FOX 55 6.1 Introducción 55 6.2 Parámetros del FOX 56 6.3 Prueba con el modelo Lineal 58 6.4 Prueba con el modelo basado en Observador Luenberger 59 6.5 Prueba con el modelo basado en Filtro de Kalman 60 6.6 Prueba con la red neuronal 61 7 Conclusiones 63 7.1 Conclusiones 63 Referencias 64 Anexos 66 Parámetros del vehículo Class-B 66 Matrices del vehículo class-B 67 Presentación de resultados 68 Parámetros del vehículo FOX 70 Matrices del vehículo FOX 71 Presentación de resultados 71 Red Neuronal 73
xvii ÍNDICE DE TABLAS Tabla 5–1 Parámetros del vehículo Class-B de simulación 27 Tabla 5–2 Error medio en la estimación del ángulo de deslizamiento lateral 54 Tabla 5–3 Error máximo en la estimación del ángulo de deslizamiento lateral 54 Tabla 6–1 Parámetros del vehículo FOX 56
xix ÍNDICE DE FIGURAS Figura 1-1: Funcionamiento del control de estabilidad. 3 Figura 2-1: Sistema coordenadas vehículo. 5 Figura 2-2: Sistema coordenadas vehículo. 6 Figura 2-3: Esquema de signo del ángulo de deslizamiento lateral. 6 Figura 2-4: Sistema plano del vehículo. 7 Figura 2-5: Ángulo de deslizamiento lateral de un neumático. 8 Figura 2-6: Relación entre el ángulo de deslizamiento lateral de un neumático y las fuerzas laterales. 8 Figura 2-7: Modelo de bicicleta 9 Figura 3-1: Esquema de estudio [6] 11 Figura 3-2: Esquema de estudio [7] 12 Figura 3-3: Esquema de estudio [15] 13 Figura 3-4: Esquema de alto nivel del proceso de estimación de redes neuronales artificiales (ANN) 13 Figura 3-5: Red neuronal de [5]. 14 Figura 4-1: Estructura del Observador 15 Figura 4-2: Esquema de estados del Observador Luenberger 16 Figura 4-3: Etapas del Filtro de Kalman. 17 Figura 4-4: Esquema de funcionamiento de una neurona 19 Figura 4-5: Esquema de la arquitectura de una red 21 Figura 4-6: Esquema de alto nivel 21 Figura 4-7: Estructura de red neuronal 22 Figura 5-1: Vehículo seleccionado 23 Figura 5-2: Vehículo seleccionado 24 Figura 5-3: Información del eje delatero 24 Figura 5-4: Información del eje trasero 25 Figura 5-5: Información de los neumáticos 25 Figura 5-6: Información del eje trasero 26 Figura 5-7: Información de los neumáticos 26 Figura 5-8: Maniobras en CarSim 27 Figura 5-9: Ángulo de giro, simulación giro circular 40 km/h. Modelo lineal 28 Figura 5-10: Ángulo de giro, simulación doble cambio de carril a 120 km/h. Modelo lineal. 28 Figura 5-11: Ángulo de giro, movimiento sinusoidal. Modelo lineal 29 Figura 5-12: Sistema lineal Simulink 30 Figura 5-13: Bloque sistema lineal 31 Figura 5-14: Ángulo de deslizamiento lateral, simulación giro circular 40 km/h. Modelo lineal 31
Figura 5-15: Ángulo de guiñada, simulación giro circular 40 km/h. Modelo lineal 32 Figura 5-16: Aceleración lateral, simulación giro circular 40 km/h. Modelo lineal 32 Figura 5-17: Error β Carsim respecto β de la simulación simulación giro circular 40 km/h. 33 Figura 5-18: Ángulo de desplazamiento lateral, simulación doble cambio de carril a 120 km/h. Modelo lineal. 33 Figura 5-19: Ángulo de guiñada, simulación doble cambio de carril a 120 km/h. Modelo lineal. 34 Figura 5-20: Aceleración lateral, simulación doble cambio de carril a 120 km/h. Modelo lineal. 34 Figura 5-21: Error β Carsim respecto β de la simulación doble cambio de carril a 120 km/h. 35 Figura 5-22: Ángulo de desplazamiento lateral, movimiento sinusoidal. Modelo lineal 35 Figura 5-23: Ángulo de guiñada, movimiento sinusoidal. Modelo lineal 36 Figura 5-24: Aceleración lateral, movimiento sinusoidal. Modelo lineal 36 Figura 5-25: Error β Carsim respecto β de la simulación movimiento sinusoidal. Modelo lineal. 37 Figura 5-26: Sistema con Observador Luenberger 38 Figura 5-27: Bloque de Observador Luenberger 38 Figura 5-28: Ángulo de deslizamiento lateral, simulación giro circular 40 km/h. Modelo basado en Observador Luenberger. 39 Figura 5-29: Ángulo de guiñada, simulación giro circular 40 km/h. Modelo basado en Observador Luenberger. 39 Figura 5-30: Error β Carsim respecto β de la simulación simulación giro circular 40 km/h. Modelo basado en Observador Luenberger. 40 Figura 5-31: Ángulo de desplazamiento lateral, simulación doble cambio de carril a 120 km/h. Modelo basado en Observador Luenberger. 40 Figura 5-32: Ángulo de guiñada, simulación doble cambio de carril a 120 km/h. Modelo basado en Observador Luenberger. 41 Figura 5-33: Error β Carsim respecto β de la simulación doble cambio de carril a 120 km/h. Modelo basado en Observador Luenberger. 41 Figura 5-34: Ángulo de desplazamiento lateral, simulación movimiento sinusoidal a 50 km/h. Modelo basado en Observador Luenberger. 42 Figura 5-35: Ángulo de guiñada, simulación movimiento sinusoidal a 50 km/h. Modelo basado en Observador Luenberger. 42 Figura 5-36: Error β Carsim respecto β de la simulación movimiento sinusoidal a 50 km/h. Modelo basado en Observador Luenberger. 43 Figura 5-37: Sistema lineal Simulink 44 Figura 5-38: Configuración filtro de Kalman 44 Figura 5-39: Ángulo de desplazamiento lateral, simulación giro circular 40 km/h. Modelo Filtro de Kalman. 45 Figura 5-40: Ángulo de guiñada, simulación giro circular 40 km/h. Modelo Filtro de Kalman. 45 Figura 5-41: Error β Carsim respecto β de la simulación giro circular 40 km/h. Modelo Filtro de Kalman. 46 Figura 5-42: Ángulo de desplazamiento lateral, simulación doble cambio de carril a 120 km/h. Modelo Filtro de Kalman. 46 Figura 5-43: Ángulo de guiñada, simulación doble cambio de carril a 120 km/h. Modelo Filtro de Kalman. 47 Figura 5-44: Error β Carsim respecto β de la simulación doble cambio de carril a 120 km/h. Modelo Filtro de
xxi Kalman. 47 Figura 5-45: Ángulo de desplazamiento lateral, movimiento sinusoidal. a 50km/h. Filtro de Kalman. 48 Figura 5-46: Ángulo de guiñada, movimiento sinusoidal. a 50km/h. Filtro de Kalman. 48 Figura 5-47: Error β Carsim respecto β de la simulación movimiento sinusoidal 50 km/h. Modelo Filtro de Kalman. 49 Figura 5-48: Librerías de la red neuronal. 50 Figura 5-49: Red neuronal implementada para la estimación del ángulo de deslizamiento lateral. 50 Figura 5-50: Entrenamiento de la red neuronal. 51 Figura 5-51: Estimación de β de la red neuronal a la prueba de doble cambio de carril a 120km/h. 51 Figura 5-52: Error entre el β de CarSim y el β a la salida de la red neuronal. 52 Figura 5-53: Entrenamiento de la red neuronal. 52 Figura 5-54: Estimación de β de la red neuronal a la prueba de doble cambio de carril a 120 km/h. 53 Figura 5-55: Error entre el β de CarSim y el β a la salida de la red neuronal. 53 Figura 6-1: Vehículo FOX. 55 Figura 6-2: Trayectoria, prueba con FOX. 56 Figura 6-3: Ángulo de giro, prueba con FOX. 57 Figura 6-4: Velocidad longitudinal del vehículo FOX. 57 Figura 6-5: Ángulo de deslizamiento lateral, con modelo lineal. 58 Figura 6-6: Error entre β real y β estimado con modeo lineal. 58 Figura 6-7: Ángulo de deslizamiento lateral, con modelo basado en observador Luenberger. 59 Figura 6-8: Error entre β real y β estimado con modeo basado en observador Luenberger. 59 Figura 6-9: Ángulo de deslizamiento lateral, con modelo basado en filtro de Kalman. 60 Figura 6-10: Error entre β real y β estimado con modeo basado en filtro de Kalman 60 Figura 6-11: Entrenamiento de la red neuronal. 61 Figura 6-12: Estimación de β de la red neuronal. 61 Figura 6-13: Error entre la β estimada y la β de la prueba del vehículo FOX. 62
xxiii Notación α Ángulo de deslizamiento de la rueda rad β Ángulo de deslizamiento lateral del vehículo rad δ Ángulo de giro del volante rad Vx Velocidad longitudinal, sobre la componente x m/s Vy Velocidad lateral, sobre la componente y m/s Γ Ángulo entre sistema de coordenadas global y vector velocidad rad Ψ Ángulo entre el sistema de coordenadas global y eje longitudinal del vehículo rad Cy Curva de rigidez del neumático - Fy Fuerza lateral, sobre la componente y N Fx Fuerza longitudinal, sobre la componente x N μ Coeficiente de rozamiento - g Aceleración de gravedad m/s2 Iz Momento de inercia del vehículo alrededor del eje z kgm 2 m Masa del vehículo kg lf Distancia entre el centro de gravedad y el eje delantero m lr Distancia entre el centro de gravedad y el eje trasero m M z Momento corrector de velocidad angular Nm S Área frontal del vehículo m2 𝐶𝑎𝑓 Rigidez a deslizamiento lateral en la rueda delantera N/ra d 𝐶𝑎𝑟 Rigidez a deslizamiento lateral en la rueda trasera N/ra d
1
Ángulo de deslizamiento lateral 8 El ángulo entre la lína media de los neumáitcos en posición original y la localización nueva se le llama ángulo de deslizamiento de los neumáticos, denominado α. En la figura 2-5 se muestra el ángulo de deslizamiento en realción a la fuerza lateral del neumático. Figura 2-5: Ángulo de deslizamiento lateral de un neumático. Durante una conducción normal, las fuerzas laterales generadas por los neumáticos son proporcionales al ángulo de deslizamiento lateral de los neumáticos, siempre y cuando este no exceda de 5 grados. La expresión que define tal relación es: 𝐹𝑦= 𝐶𝑦∗𝛼 (2–3) Donde: • Cy: es la curva de rigidez del neumático. • Fy: es la fuerza lateral, sobre la componente y. • α: ángulo de deslizamiento lateral de los neumáticos. En la figura 2-6 se muestra la relación que existe entre la fuerza lateral y el ángulo de deslizamiento de los neumáticos. Para ángulos de deslizamiento pequeños las fuerzas aumentan lienalmente, lo que se llama región lineal, mientras que, para ángulos de deslizamiento más grandes, en la región no lineal, las fuerzas se saturan. Figura 2-6: Relación entre el ángulo de deslizamiento lateral de un neumático y las fuerzas laterales.
9 9 Desarrollo de métodos para la estimación del ángulo de deslizamiento lateral en vehículos 2.1.2 Parámetros de los que depende Es bastante importante conocer en cada instante de tiempo el ángulo de deslizamiento lateral del vehículo para poder realizar diversos sistemas de control de estabilidad del vehículo. • Aceleración lateral: Es uno de los parámetros que más influye en la estimación lateral del vehículo. a baja velocidad del vehículo, la aceleración lateral es despreciable y β es pequeño. En cabio a altas velocidades, la aceleración lateral del vehículo es mayor y β aunmenta considerablemente. • Velocidad longitudinal: Normalmente se calcula a partir de la velocidad angular de las ruedas, este valor no ofrece un valor real cuando existe un elevado deslizamieto, ya que una fuerte aceleración o deceleración, las ruedas se bloquean. • Dirección: Es la dirección marcada por el conductor y que debe seguir el vehículo. • Velocidad de guiñada: Velocidad angular de rotación sobre el eje z del vehículo, que aparece al girar las ruedas directoras para realizar una curva. • Características de los neumáticos: Curva de rigidez, presión, orientación, dimensiones, etc. • Condiciones de la carretera: influyen en la velocidad lateral y longitudial respectivamente. o Peralte: pendiente transversal de la calzada. o Inclinación: pendiente longitudinal de la calzada. • Propiedades de interfaz entre neumático y calzada: fuerzas de adherencia no lineales. • Características del vehículo: o Ángulo de balanceo o Ángulo de cabeceo o Carga del vehículo • Ángulo del volante y del par corrector 2.2 Modelo lineal del vehículo En los estudios de estabilidad y maniobrabilidad de vehículos se utilizan comúnmente un modelo dinámico simplificado de dos grados de libertad, este es conocido como el modelo de la bicicleta [3] [4]. En este diseño se centraliza el efecto producido sobre las dos ruedas traseras y las dos ruedas delanteras del vehículo, una única rueda delantera y una trasera como muestra la figura 5-1. Figura 2-7: Modelo de bicicleta Se aproximan las funciones trigonométricas para ángulos pequeños, no se consideran los efectos dinámicos como el cabeceo; y tampoco las variaciones de las fuerzas normales de las ruedas. Para la reproducción de las fuerzas laterales en los neumáticos se usa un modelo lineal, considerando valores de 𝐶𝛼 constantes. Este modelo de la bicicleta normalmente se representa con las ecuaciones 5-1.
Ángulo de deslizamiento lateral 10 {𝑚𝛽=−𝑚𝜔𝑧+1 𝑣𝑥(𝐹𝑦𝑓+𝐹𝑦𝑟) 𝐼𝑧𝜔𝑧 =𝐹𝑦𝑓𝑙𝑓−𝐹𝑦𝑟𝑙𝑟 (2–4) Donde: 𝐹𝑦𝑓=2∗𝛼𝑓∗𝐶𝛼𝑓∗cos(𝛿) 𝐹𝑦𝑟=−2∗𝛼𝑟∗𝐶𝛼𝑟 𝛼𝑓=𝛿−𝜔𝑧𝑙𝑓 𝑉𝑥−𝛽 𝛼𝑟=𝜔𝑧𝑙𝑟 𝑉𝑥−𝛽 (2–5) Reemplazando 2-5 en 2-4, se puede escribir como: {𝑥=𝐴𝑥+𝐵𝛿 𝑦=𝐶𝑥 [𝛽𝛾]= [ 2∗−𝐶𝛼𝑓−𝐶𝛼𝑟 𝑚∗𝑉𝑥2∗−𝑙𝑓∗𝐶𝛼𝑓+𝑙𝑟∗𝐶𝛼𝑟 𝑚∗𝑉𝑥2−1 2∗−𝑙𝑓∗𝐶𝛼𝑓+𝑙𝑟∗𝐶𝛼𝑟 𝐼𝑍𝑍 2∗−𝑙𝑓2∗𝐶𝛼𝑓−𝑙𝑟2∗𝐶𝛼𝑟 𝐼𝑍𝑍∗𝑉𝑥 ] [𝛽𝛾]+ [ 2∗𝐶𝛼𝑓 𝑚∗𝑉𝑥 2∗𝑙𝑓∗𝐶𝛼𝑓 𝐼𝑍𝑍 ] 𝛿 Donde: A =[2∗−𝐶𝛼𝑓−𝐶𝛼𝑟 𝑚∗𝑉𝑥2∗−𝑙𝑓∗𝐶𝛼𝑓+𝑙𝑟∗𝐶𝛼𝑟 𝑚∗𝑉𝑥2−1 2∗−𝑙𝑓∗𝐶𝛼𝑓+𝑙𝑟∗𝐶𝛼𝑟 𝐼𝑍𝑍 2∗−𝑙𝑓2∗𝐶𝛼𝑓−𝑙𝑟2∗𝐶𝛼𝑟 𝐼𝑍𝑍∗𝑉𝑥] B=[2∗𝐶𝛼𝑓 𝑚∗𝑉𝑥 2∗𝑙𝑓∗𝐶𝛼𝑓 𝐼𝑍𝑍 ] 𝐶=[0 1] (2–6)
11 11 Desarrollo de métodos para la estimación del ángulo de deslizamiento lateral en vehículos Donde: • β: ángulo de deslizamiento lateral. • 𝜔𝑧: velocidad de guiñada. • 𝐼𝑍𝑍: momento de inercia respecto al eje vertical. • 𝑙𝑓 𝑦 𝑙𝑟: distancias de los ejes delantero y trasero desde el centro de graedad. • 𝐶𝛼𝑟 𝑦 𝐶𝛼𝑓: coeficientes de rigidez de la rueda delantera y trasera respectivamente. • 𝛿 : ángulo de dirección de las ruedas delanteras (promedio). • 𝑉𝑥: velocidad longitudinal. • 𝛾: velocidad de guiñada de vehículo.
11 3 DESCRIPCIÓN DE LOS MÉTODOS DE ESTIMACIÓN 3.1 Introducción La estimación del ángulo de deslizamiento lateral del vehículo ha sido un gran desafío desde la introducción de los primeros sistemas a bordo que controan la estabilidad del vehículo, como por ejemplo el control electrónico de estabilidad (ESC). En la actualidad, los sistemas de control de vehículos como el control de la dirección de la rueda, el control directo del momento de guiñada, controles de tracción avanzados y los controles de estabilidad se utilizan en conjunto para mejorar el rendimiento del vehículo y sobre todo la estabilidad. Estos sistemas mejoran la capacidad de agarre en carretera, rendimiento en curvas, la capacidad de conducción y la estabilidad, ayudando al conductor especialmente durante las maniobras de emergencia o en situaciones críticas. Todos estos controles se basan en evaluaciones en tiempo real del estado del vehículo y del seguimiento del ángulo de deslizamiento lateral en particular, por lo que una estimación rápida y precisa de puede considerarse clave para la seguridad. [5] El ángulo de deslizamiento lateral depende de los parámetros mencionados en el apartado 2.1.2, de los cuales existen sensores para poder medir estos parámetros como por ejemplo GPS para la velocidad longitudinal y lateral, giroscopios que proporcionan la velocidad angular del vehículo, acelerómetros miden la aceleración lineal y angular, magnetómetros proporciona ángulo de Euler, potenciómetors rotatorios para conocer la dirección de giro, entre otros. Con estós parámetros existen una gran cantidad de estudios basados en redes neuronales, observadores lineales y no lienales, integrados con los sensores mencioncionados anteriormente. 3.2 Estimación basada en observadores Ente enfoque utiliza un modelo de referencia del vehículo para estimadores de estado, tanto para condiciones en estado estacionario como transitorio. La necesidad de un modelo implica que los resultados estén relacionados con la complejidad del modelo y con el conocimiento de sus parámetros. Para estas aplicaciones se usa modelos lineales y no lineales del vehículo. Los observadores que existen son el observador Luenberger, el observador de modo deslizante y el filtro de Kalman siendo este último el más utilizado. En [6] desarrolla un observador para estimar el ángulo de deslizamiento lateral tomando en cuenta las no linealidades del sistema, tanto en el diseño como en el análisis teórico. Los objetivos de este diseño incluyen una reducción de la complejidad computacional en comparación con la EKF. El diseño es basado en una configuración de sensor estándar, y está sujeto a pruebas exhaustivas en condiciones realistas. Figura 3-1: Esquema de estudio [6]
Descripción de los métodos de estimación 12 12 En [7] realiza una comparación entre el filtro de Kalman EKF y UKF, en la figura 3-1 se muestra el modelo de este estudio. Para la estimación utiliza la velocidad de guiñada y balancio medido por giroscopios, acaleraciones laterales y longitudinales medidas por acelerómetros, deflexiones de suspensión medidos con sensores específicos, ángulo de dirección medido por un sensor ótico y l avelocidad de rotación para cada ruedaa dada por sensores magnéticos. El primer bloque tiene como objetivo proporcionar la masa del vehículo, transferencia de carga lateral, lsa fuerzas de los neumáticos y la aceleración lateral corregida. Figura 3-2: Esquema de estudio [7] En [8] se propone un método de estimación del ángulo de deslizamiento lateral que considera la variación severa de la velocidad longitudinal durante un corto período de tiempo el cual un vehículo puede perder estabilidad debido al deslizamiento o atascamiento. Se utiliza un filtro de Kalman extendido (EKF) basado en un modelo cinemático. En [9] utiliza mediciones de un GPS y un sistema de navegación inercial (INS) que se integra con un filtro de Kalman para proporcionar estimaciones de los parámetros del vehículo que se utilizan para calcular el ángulo de deslizamiento lateral. En [10] utiliza un método de estimación de fusión del ángulo de deslizamiento lateral basado en un filtro Kalman y una relación de acoplamiento de velocidad de la rueda. En [11] se utiliza un observador Luenberger para estimar los estados dinámicos del vehículo. En [12] realiza la estimación del ángulo de deslizamiento lateral del vehículo con un filtro de Kalman EKF con un modelo dinámico del vehículo. Para comprobar los resultados utiliza CarSim y Simulink. En [13] realiza una estimación mediante el algoritmo de filtro de Kalman EKF considerando características no lineales del neumático y se verificó mediante CarSim y Simulink, además de pruebas con un vehículo real. En [14] se utiliza un observador no lineal para la estimación de la velocidad longitudinal, velocidad lateral y velocidad de guiñada de un vehículo. El estimador se basa en el modelo de fuerzas de un neumático. En [15] presenta un método que estima el ángulo de deslizamiento lateral del vehículo y un coeficiente de fricción entre la llanta y la carretera mediante la combinación de medidas de un magnetómetro, un sistema de posicionamiento global (GPS) y una unidad de medición inercial (IMU). El algoritmo de estimación se basa en una estructura en cascada que consta de un marco de fusión de sensores basado en filtros de Kalman.
13 13 Desarrollo de métodos para la estimación del ángulo de deslizamiento lateral en vehículos Figura 3-3: Esquema de estudio [15] 3.3 Redes Neuronales Las redes neuronales se consideran herramientas eficaces para el modelado de sistemas, ya que son adecuadas para modelar sisteras complejos utlizando su capacidad para identificar relaciones entre datos de entrada y salida. También ofrecen ventajas decisivas como el aprendizaje adaptativo, la tolerancia a fallos y la generalización. En los últimos años, el desarrollo de computadoras de alta velocidad alentó a la aplicación de redes neuronales. Con una red neuronal, el vehículo puede considerarse una caja negra y solo se necesita un conjunto convencional de sensores para entrenar y alimentar a la red. Las entradas de la caja negra son la velocidad o ángulo de guiñada, la acelareación lateral, el ángulo de dirección y la velocidad del vehículo, mientras que el ángulo de deslizamiento lateral es la salida. Figura 3-4: Esquema de alto nivel del proceso de estimación de redes neuronales artificiales (ANN) En [5] se da un método fiable y eficaz para estimar el ángulo de deslizamiento lateral del vehículo mediante una red artificial. Es esta aplicación la red es simple para poder trabajar em tiempo real dentro de aplicaciones integradas como sistemas de seguridad activa.
Descripción de los métodos de estimación 14 14 Figura 3-5: Red neuronal de [5]. En [16] se utiliza una red neuronal para estimar el ángulo de deslizamiento lateral del vehículo mediante una red neuronal, tomando como entradas la aceleración lateral y la aceleración del ángulo de guiñada. Sin embargo, la red neuronal BP tiene desventajas de velocidad de convergencia lenta y valor mínimo local. Este método utiliza una función de aprendizaje para mejorar la velocidad de estimación y tener un aprendizaje mas eficiente. En [17] propone un observador basado en ANFIS (sistema de interferencia neuro-difuso adaptativo) combinado con Filtros de Kalman para estimar el ángulo de deslizamiento lateral, que a su vez se utiliza para controlar la dinámica del vehículo y mejorar su comportamiento. 3.4 Patentes de fabricantes En [18], una patente de Toyota, se realiza una estimación del ángulo de deslizamiento para un vehículo mediante un dispositivo de formación de imágenes para capturar una imagen de al menos una de las partes delantera y trasera del vehículo y una unidad de control. El dispositivo de imágenes es una cámara CCD que incluye una lente y un sensor de imágenes. La unidad de control está configurada para calcular un ángulo de deslizamiento del vehículo basado en una relación de distancia horizontal entre un centro de imagen y el punto de fuga a una distancia entre el centro de la lente de la cámara CCD y un sensor de imagen. En [19], una patente de Ford, se usa un método y sistema para determinar un ángulo de deslizamiento lateral para un vehículo automotor, que incluye varios sensores tales como un sensor de velocidad de guiñada, un sensor de velocidad, un sensor de aceleración lateral, un sensor de velocidad, un sensor de ángulo de dirección y un sensor de aceleración longitudinal. Cada uno de los sensores está acoplado a un controlador que determina una velocidad de ángulo de deslizamiento lateral en respuesta a las señales del sensor. La velocidad del ángulo de deslizamiento lateral se compensa debido a la gravedad y los cambios de actitud del vehículo. Además, la velocidad del ángulo de deslizamiento lateral se compensa debido a la no linealidad del ángulo de deslizamiento lateral. La velocidad del ángulo de deslizamiento lateral está integrada, preferiblemente con un filtro de integración anti-deriva (para determinar un ángulo de deslizamiento lateral integrado). También se determina un ángulo de deslizamiento lateral en estado estable en función de los sensores, como el sensor de velocidad de guiñada y el sensor de aceleración lateral. El ángulo de deslizamiento lateral en estado estacionario se filtra usando un filtro de recuperación en estado estacionario. El ángulo de deslizamiento lateral integrado y el ángulo de deslizamiento lateral en estado estable se combinan para formar una estimación del ángulo de deslizamiento lateral.
15 15 Desarrollo de métodos para la estimación del ángulo de deslizamiento lateral en vehículos 4 DISEÑO Y VALIDACIÓN DE LOS ESTIMADORES 4.1 Introducción El ángulo de deslizamiento lateral (slip angle) es uno de los parámetros clave para el funcionamiento de los sistemas de estabilidad. En este capítulo se diseñarán algunos métodos para estimará el ángulo de deslizamiento lateral, para lo que se utiliza parámetros que normalmente son conocidos en los vehículos producidos en masas como son el ángulo de giro, velocidad longitudinal, y velocidad de guiñada. 4.2 Observador Luenberger En la ecuación de la fórmula 4-3, se puede observar que Vx ingresa como un parámetro a la matriz A. por otro lado los coeficientes de rigidez de las ruedas varían dependiendo la condición del suelo, tipo de neumático, la presión de estos, entre otros aspectos. Para este motivo es necesario que el observador sea robusto ante variaciones paramétricas del sistema y que permita compensar las dinámicas no modeladas. El observador de Luenberger es un estimador de estado, un algoritmo que permite estimar el estado interno oculto, no medible, de un sistema dinámico lineal a partir de las mediciones de la entrada y la salida de dicho sistema. En primer lugar, se discutirá la observabilidad del sistema. La matriz de observabilidad se construye a partir de la matriz A y C como 𝑂𝑏. Se puede probar usando Matlab que el rango de la matriz de observabilidad, en este caso, es 2 (rango completo) y, por lo tanto, el sistema es observable. La estructura del observador se presenta en la ecuación 4-4 donde se conserva la parte principal del sistema y se agrega un término de corrección 𝐿 (𝑦-𝑦) que hace que el sistema converja. La figura 4-2 presenta la estructura del observador donde la entrada del observador es la entrada uy la salida y del sistema. [11] {𝑥=𝐴𝑥+𝐵𝑢−𝐿(𝑦−𝑦) 𝑦=𝐶𝑥+𝐷𝑢 (4–1) Figura 4-1: Estructura del Observador El error dinámico del observador y del modelo de puede describir como se indica en la fórmula 4-2.
Diseño y validación de los estimadores 22 22 Figura 4-7: Estructura de red neuronal
23 23 Desarrollo de métodos para la estimación del ángulo de deslizamiento lateral en vehículos 5 MODELOS DE ESTIMACIÓN DEL ANGULO DE DESLIZAMIENTO LATERAL 5.1 Introducción Este proyecto pretende modelar algunos sistemas para estimar el ángulo de deslizamiento lateral de un vehículo. Este se implementará en el software Simulink y la red neuronal en Phyton, y se someterá a estudio un modelo de vehículo seleccionado en el software de CarSim, sobre el que se realizarán una serie de pruebas y se analizarán los resultados obtenidos. Dado que este sistema, para la estimación del ángulo β, en un primer lugar, se seleccionará un modelo de vehículo en el software CarSim como sujeto de estudio, y se obtendrán los parámetros necesarios para el diseño de los modelos a partir de sus características técnicas. 5.2 Carácterísticas del vehículo Para el estudio de los modelos para la estimación del ángulo de deslizamiento lateral, se escogió un vehículo en el software de CarSim. En este caso se escogió un deportivo clase B como se ve en la figura 5-1. Los parámetros del modelo seleccionado son los siguientes: • Coeficientes de rigidez lateral de los neumáticos, se considera igual para el eje trasero como el delantero. • Distancia del eje delantero y trasero al centro de gravedad del vehículo. • Masa total del vehículo, que será la suma de la masa suspendida y no suspendida. • Momento de inercia alrededor del eje vertical sobre el centro de gravedad. Figura 5-1: Vehículo seleccionado
Modelos de estimación del angulo de deslizamiento lateral 24 24 De la figura 6-2 se obtiene que la distancia entre ejes es de 2800 mm, y la distancia del centro de gravedad al eje delantero es de 1165 mm, por lo que se extraen finalmente los valores de 𝑙𝑓 y 𝑙𝑟: 𝑙𝑓=1165 𝑚𝑚 𝑙𝑟=1635 𝑚𝑚 (5–1) También se extrae el valor del momento de inercia alrededor del eje vertical denominado como Yaw Inertia (Izz). 𝐼𝑧𝑧=996 𝑘𝑔 𝑚2 (5–2) Figura 5-2: Vehículo seleccionado Para el cálculo de la masa total del vehículo se tendrá en cuenta la masa suspendida, y las masas no suspendidas del eje delantero y el eje trasero. Figura 5-3: Información del eje delatero
25 25 Desarrollo de métodos para la estimación del ángulo de deslizamiento lateral en vehículos Figura 5-4: Información del eje trasero De la figura 5-2 se obtiene el valor de la masa suspendida, y de las figuras 5-3 y 5-4 las masas no suspendidas del eje delantero y trasero respectivamente. 𝑚=1020+60+60 𝑘𝑔=1140 𝑘𝑔 (5–3) Figura 5-5: Información de los neumáticos Para la obtención de los coeficientes de rigidez lateral se seleccionará la opción de CarSim referido a los neumáticos (figura 5-6), y después el desplegable para la fuerza lateral Car 𝐹𝑦.
Modelos de estimación del angulo de deslizamiento lateral 26 26 Figura 5-6: Información del eje trasero La rigidez a deslizamiento lateral se entiende como la relación entre la fuerza lateral y el ángulo de deslizamiento lateral formado en el neumático. Esta relación presenta un comportamiento lineal para valores pequeños del ángulo, y se corresponde con la zona estable. El software de CarSim proporciona las curvas de rigidez al deslizamiento lateral para diferentes condiciones de carga vertical sobre el neumático, y las representa en el siguiente diagrama en tres dimensiones. Figura 5-7: Información de los neumáticos La rigidez a deslizamiento lateral se obtiene de la pendiente de la curva en la zona lineal, que corresponde a ángulos de deriva menores de 𝛼=5°. Se seleccionará una curva intermedia de la figura 5-7 y se calcula como el cociente entre la fuerza lateral 𝐹𝑦 y el ángulo de deriva del neumático 𝛼, y se expresará en 𝑁/𝑟𝑎𝑑. 𝐶𝑎𝑓=𝐶𝑎𝑟=5345.91 𝑁 4 𝑑𝑒𝑔 .180 𝑑𝑒𝑔 𝜋 𝑟𝑎𝑑 = 76575 𝑁𝑟𝑎𝑑 ⁄ (5–4)
27 27 Desarrollo de métodos para la estimación del ángulo de deslizamiento lateral en vehículos Se presenta una tabla con los parámetros del modelo de CarSim que se usa para los modelos propuestos. Tabla 5–1 Parámetros del vehículo Class-B de simulación Parámetro Nombre del parámetro Valor [unidad] 𝑚 Masa del vehículo 1140 [kg] 𝐼𝑧𝑧 Momento de inercia del vehículo alrededor del eje z 996 [kg m2] 𝐹𝑦 Fuerza lateral, sobre la componente y 5345.91 [N] 𝐶𝑎𝑓 Rigidez a deslizamiento lateral en la rueda delantera 76575 [N/rad] 𝐶𝑎𝑟 Rigidez a deslizamiento lateral en la rueda trasera 76575 [N/rad] 𝑙𝑓 Distancia entre el centro de gravedad y el eje delantero 1.165 [m] 𝑙𝑟 Distancia entre el centro de gravedad y el eje trasero 1.635 [m] 5.3 Maniobras de las pruebas para simular Para comprobar el comportamiento de los modelos de estimación del ángulo de deslizamiento lateral se escogieron maniobras en las que se presenten cambio de dirección en los que aparecen esfuerzos laterales sobre la dinámica del vehículo. Las respuestas del sistema para la estimación del ángulo de deslizamiento lateral de los modelos propuestos se compararán respecto a la respuesta proporcionada por el software de simulación CarSim. Las maniobras escogidas son doble cambio de carril, entrada sinusoidal y en círculo. Figura 5-8: Maniobras en CarSim
Modelos de estimación del angulo de deslizamiento lateral 28 28 5.3.1 Giro circular a 40 km/h Durante esta maniobra el vehículo gira a 15º aproximandamente de manera constante de modo que permanece moviéndose en forma de una circunferencia a velocidad de 40 km/h. Figura 5-9: Ángulo de giro, simulación giro circular 40 km/h. Modelo lineal 5.3.2 Doble cambio de carril a 120 km/h Durante esta maniobra el vehículo se encuentra realizando una trayectoria recta a una velocidad de 120 km/h, gira para cambiar de carril, luego gira en sentido contrario para volver al carril inicial. Figura 5-10: Ángulo de giro, simulación doble cambio de carril a 120 km/h. Modelo lineal.
29 29 Desarrollo de métodos para la estimación del ángulo de deslizamiento lateral en vehículos 5.3.3 Movimiento sinusoidal a 50 km/h Durante esta maniobra el vehículo se encuentra realizando giros con tal que forma una trayectoria sinusoidal uniforme. Figura 5-11: Ángulo de giro, movimiento sinusoidal. Modelo lineal
Modelos de estimación del angulo de deslizamiento lateral 30 30 5.4 Modelo Lineal Para construir el modelo lineal se utilizan las matrices de la fórmula 5-3 del modelo lineal del vehículo en el que la entrada es el ángulo de giro del volante (δ), y como salidas se tiene el ángulo de deslizamiento lateral (β) y el ángulo de guiñada (ϒ). Figura 5-12: Sistema lineal Simulink Támbien mediante las ecuaciones de la formula 5-5 se puede obtener la aceleración lateral (𝑎𝑦). 𝑎𝑦= 𝑉𝑦+𝑉𝑥ϒ 𝑉𝑦=𝛽𝑉𝑥 Entonces: 𝑎𝑦= (𝛽+ϒ)𝑉𝑥 (5–5) El modelo del sistema lineal queda como se muestra en la figura 2-6.
31 31 Desarrollo de métodos para la estimación del ángulo de deslizamiento lateral en vehículos Figura 5-13: Bloque sistema lineal 5.4.1 Simulaciones 5.4.1.1 Giro circular a 40 km/h Figura 5-14: Ángulo de deslizamiento lateral, simulación giro circular 40 km/h. Modelo lineal
Modelos de estimación del angulo de deslizamiento lateral 38 38 Figura 5-26: Sistema con Observador Luenberger Figura 5-27: Bloque de Observador Luenberger
39 39 Desarrollo de métodos para la estimación del ángulo de deslizamiento lateral en vehículos 5.5.1 Simulaciones 5.5.1.1 Giro circular a 40 km/h Durante esta maniobra el vehículo giro a 15º aproximandamente de manera constante de modo que permanece moviéndose en forma de una circunferencia a velocidad de 40 km/h. Figura 5-28: Ángulo de deslizamiento lateral, simulación giro circular 40 km/h. Modelo basado en Observador Luenberger. Figura 5-29: Ángulo de guiñada, simulación giro circular 40 km/h. Modelo basado en Observador Luenberger.
Modelos de estimación del angulo de deslizamiento lateral 40 40 Figura 5-30: Error β Carsim respecto β de la simulación simulación giro circular 40 km/h. Modelo basado en Observador Luenberger. El error en este caso es un poco mayor al del caso del modelo lineal, pero sigue siendo aceptable. 5.5.1.2 Doble cambio de carril a 120 km/h Durante esta maniobra el vehículo se encuentra realizando una trayectoria recta a una velocidad de 120 km/h, gira para cambiar de carril, luego gira en sentido contrario para volver al carril inicial. Figura 5-31: Ángulo de desplazamiento lateral, simulación doble cambio de carril a 120 km/h. Modelo basado en Observador Luenberger.
41 41 Desarrollo de métodos para la estimación del ángulo de deslizamiento lateral en vehículos Figura 5-32: Ángulo de guiñada, simulación doble cambio de carril a 120 km/h. Modelo basado en Observador Luenberger. Figura 5-33: Error β Carsim respecto β de la simulación doble cambio de carril a 120 km/h. Modelo basado en Observador Luenberger. El error de la simulación es mínimo, se puede ver en la figura 5-31el ángulo β estimado es similar al β real de la simulación.
Modelos de estimación del angulo de deslizamiento lateral 42 42 5.5.1.3 Movimiento sinusoidal a 50 km/h Durante esta maniobra el automóvil se encuentra realizando giros con tal que forma una trayectoria sinusoidal uniforme. Figura 5-34: Ángulo de desplazamiento lateral, simulación movimiento sinusoidal a 50 km/h. Modelo basado en Observador Luenberger. Figura 5-35: Ángulo de guiñada, simulación movimiento sinusoidal a 50 km/h. Modelo basado en Observador Luenberger.
43 43 Desarrollo de métodos para la estimación del ángulo de deslizamiento lateral en vehículos Figura 5-36: Error β Carsim respecto β de la simulación movimiento sinusoidal a 50 km/h. Modelo basado en Observador Luenberger. La respuesta del modelo de estimación basado en el observador Lenberger es mucho mejor que el modelo lineal ya que estima dependiendo de señales de ángulo de guiñada y de ángulo de giro del volante.
Modelos de estimación del angulo de deslizamiento lateral 44 44 5.6 Modelo basado en Filtro de Kalman Para modelar el sistema con el Filtro de Kalman se utilizan las matrices discretas de la fórmula 5-3 del modelo lineal del automóvil, en el que las entradas son el ángulo de giro del volante (δ) y el ángulo de guiñada (ϒ), que representan las señales que van desde los sensores del vehículo. Y como salidas el ángulo de deslizamiento lateral (β) y el ángulo de guiñada (ϒ) de seguimiento. Las matrices de configuración son G que es una matriz real con tantas filas como A, H es una matriz con tantas filas como C, la matriz Q es para la matriz de covarianza del ruido del proceso de tamaño igual al numero de entradas del proceso, R es la matriz de covarianza del ruido de medición, el tamaño de esta matriz es igual el número de salidas y N es la matriz de covarianza cruzada de ruido de proceso y medición de valor positivo. Las matrices de configuración del filtro son: G = [0.01; 0.3], H=0.5; Q=10; R=0.1 y N=0. Estos valores se obtuvieron con una serie de pruebas para obtener los valores mas óptimos. Figura 5-37: Sistema lineal Simulink Figura 5-38: Configuración filtro de Kalman
45 45 Desarrollo de métodos para la estimación del ángulo de deslizamiento lateral en vehículos 5.6.1 Simulaciones 5.6.1.1 Giro circular a 40 km/h Durante esta maniobra el vehículo gira a 15º aproximandamente de manera constante de modo que el vehículo permanece moviéndose en forma de una circunferencia a velocidad de 40 km/h. Figura 5-39: Ángulo de desplazamiento lateral, simulación giro circular 40 km/h. Modelo Filtro de Kalman. Figura 5-40: Ángulo de guiñada, simulación giro circular 40 km/h. Modelo Filtro de Kalman.
Modelos de estimación del angulo de deslizamiento lateral 46 46 Figura 5-41: Error β Carsim respecto β de la simulación giro circular 40 km/h. Modelo Filtro de Kalman. El error del ángulo β estimado respecto al ánuglo β de CarSim es mínimo, esta en el rango de lo aceptable. 5.6.1.2 Doble cambio de carril a 120 km/h Durante esta maniobra el vehículo se encuentra realizando una trayectoria recta a una velocidad de 120km/h, gira para cambiar de carril, luego gira en sentido contrario para volver al carril inicial. Figura 5-42: Ángulo de desplazamiento lateral, simulación doble cambio de carril a 120 km/h. Modelo Filtro de Kalman.
47 47 Desarrollo de métodos para la estimación del ángulo de deslizamiento lateral en vehículos Figura 5-43: Ángulo de guiñada, simulación doble cambio de carril a 120 km/h. Modelo Filtro de Kalman. Figura 5-44: Error β Carsim respecto β de la simulación doble cambio de carril a 120 km/h. Modelo Filtro de Kalman. Como se puede observar en la figura 5-42 el ángulo β estimado es bastante similar al β real, el error es mínimo.
Modelos de estimación del angulo de deslizamiento lateral 54 54 Resumen Los métodos en general tienen un rendimiento similar, ya que dan un error bastante aceptable. El método con menor error es la red neuronal ya que toma en cuenta un modelo no lineal, con velocidad longitudinal variable, del vehículo. Los métodos con Observador Luenberger y con filtro de Kalman están basados en el modelo lineal por lo que no pueden ser puestos a prueba con velocidad longitudinal variable. La desventaja de la red neuronal es que necesita datos de muchos experimentos para el entrenamiento y optimizar la estimación del ángulo de deslizamiento lateral además de que el tiempo de procesamiento es alto y no serviría para aplicaciones en las que se estime en tiempo real. Tabla 5–2 Error medio en la estimación del ángulo de deslizamiento lateral Prueba de manejo circular 40km/h Prueba de manejo de doble cambio de carril a 120km/h Prueba de manejo sinusoidal 50km/h Modelo lineal 0.004945 0.04524 0.004021 Observador Luenberger 0.02183 0.06351 0.006034 Filtro de Kalman 0.0319 0.1529 0.006118 Red Neuronal - 0.032 - Tabla 5–3 Error máximo en la estimación del ángulo de deslizamiento lateral Prueba de manejo circular 40km/h Prueba de manejo de doble cambio de carril a 120km/h Prueba de manejo sinusoidal 50km/h Modelo lineal 0.2071 0.3105 0.008826 Observador Luenberger 0.2071 0.3078 0.01458 Filtro de Kalman 0.2048 0.4313 0.02143 Red Neuronal - 0.2 -
55 55 Desarrollo de métodos para la estimación del ángulo de deslizamiento lateral en vehículos 6 EXPERIMENTO CON DATOS DEL VEHÍCULO FOX 6.1 Introducción En esta parte se van a realizar las pruebas con los datos de los experimetnos con el vehículo FOX, del TFG “Control de la dinámica de vehículos eléctricos con motores en las ruedas” de Juan Carlos Fraile de la Universidad de Sevilla. [24] El FOX es un vehículo eléctrico desarrollado en la Universidad de Sevilla que presenta dos principales novedades frente a los modelos convencionales: • Sistema de alimentación eléctrica que permite combinar el uso de baterías y una pila de hidrógeno. • Tracción integral a las cuatro ruedas mediante la inclusión de 4 motores intrarueda, ofreciendo mayor aptitud que los vehículos que presentan como máximo un motor por eje, para el desarrollo de los sistemas de tracción y estabilidad. Figura 6-1: Vehículo FOX. El vehículo FOX dispone de una unidad de medición inercial (IMU) que proporciona las medidas del vehículo. Esto lo realiza a través de los siguientes sensores: • Acelerómetro: Proporciona la aceleración lineal y angular del FOX • Magnetómetro: Proporciona los ángulos de Euler referenciados a un sistema de ejes local. • Giróscopo: Proporciona Velocidad angular del vehículo. • GPS: Posición y velocidad referenciados a un sistema de coordenadas no locales (Ejes NED). Además de la IMU el FOX cuenta con otros sensores: • Potenciómetros lineales en la amortiguación utilizados para conocer las fuerzas verticales que actúan sobre cada rueda.
Experimento con datos del vehículo FOX 56 56 • Potenciómetros lineales en los pedales utilizados para conocer la posición o recorrido de cada pedal. • Potenciómetro rotatorio en el volante empleado para conocer el ángulo de giro del volante. Los ángulos de Euler proporcionados por el magnetómetro son utilizados para convertir la velocidad lineal medida por el GPS a velocidad longitudinal y lateral, y con esto calcular el ángulo de deslizamiento lateral, con la fórmula 2-1. 6.2 Parámetros del FOX Los parámetros del FOX para las simulaciones se resumen en la tabla 6-1. Tabla 6–1 Parámetros del vehículo FOX Parámetro Nombre del parámetro Valor [unidad] 𝑚 Masa del vehículo 400.24 [kg] 𝐼𝑧𝑧 Momento de inercia del vehículo alrededor del eje z 1047.5 [kg m2] 𝐶𝑎𝑓 Rigidez a deslizamiento lateral en la rueda delantera 47000 [N/rad] 𝐶𝑎𝑟 Rigidez a deslizamiento lateral en la rueda trasera 53000 [N/rad] 𝑙𝑓 Distancia entre el centro de gravedad y el eje delantero 1.3 [m] 𝑙𝑟 Distancia entre el centro de gravedad y el eje trasero 1.22 [m] La prueba realizada con el vehículo FOX sigue la trayectoria de la figura 6-2, en la que el ángulo de giro y la velocidad está alrededor de las figuras 6-3 y 6-4 respectivamente. Figura 6-2: Trayectoria, prueba con FOX.
57 57 Desarrollo de métodos para la estimación del ángulo de deslizamiento lateral en vehículos Figura 6-3: Ángulo de giro, prueba con FOX. La velocidad longitudinal es aproximadamente 5 m/s que será utilizado en como parámetro para las simulaciones del modelo lineal, modelo del observador Luenberger y con el modelo utilizando filtro de Kalman. Figura 6-4: Velocidad longitudinal del vehículo FOX.
Experimento con datos del vehículo FOX 58 58 6.3 Prueba con el modelo Lineal Figura 6-5: Ángulo de deslizamiento lateral, con modelo lineal. Figura 6-6: Error entre β real y β estimado con modeo lineal. Como se puede observar en la figura 6-5 el β estimado con el modelo lineal es bastante aproximado al β calculado en el experimento real. El error es producido porque la velocidad real no es constante, sino que tiene un rango de variación y en la matriz de parámetros es una constante.
59 59 Desarrollo de métodos para la estimación del ángulo de deslizamiento lateral en vehículos 6.4 Prueba con el modelo basado en Observador Luenberger Figura 6-7: Ángulo de deslizamiento lateral, con modelo basado en observador Luenberger. Figura 6-8: Error entre β real y β estimado con modeo basado en observador Luenberger. El β estimado con el modelo con observador Luenberger es muy próximo al β calculado en el experimento real. El error es producido porque la velocidad real no es constante, sino que tiene un rango de variación y en la matriz de parámetros es una constante.
Experimento con datos del vehículo FOX 60 60 6.5 Prueba con el modelo basado en Filtro de Kalman Figura 6-9: Ángulo de deslizamiento lateral, con modelo basado en filtro de Kalman. Figura 6-10: Error entre β real y β estimado con modeo basado en filtro de Kalman El β estimado con el modelo con flitro de Kalman es similar al β calculado en el experimento real. El error es producido porque la velocidad real no es constante, sino que tiene un rango de variación y en la matriz de parámetros es una constante. Este es el que menor error tiene entre los modelos que utilizan el modelo de la bicicleta como matriz de parámetros.
61 61 Desarrollo de métodos para la estimación del ángulo de deslizamiento lateral en vehículos 6.6 Prueba con la red neuronal Para el entrenamiento de la red neuronal se utlizan todos los datos de los experimentos anteriormente mencionados y se hace la prueba con un tramo del experimento con el vehiculo FOX. Figura 6-11: Entrenamiento de la red neuronal. Figura 6-12: Estimación de β de la red neuronal.
Experimento con datos del vehículo FOX 62 62 El β estimado con la red neuronal es bastante próxima al β real del experiemnto, ya que la red neuronal toma como entrada la velocidad longitudinal, y en este caso al ser una velocidad que no es constante la red neuronal realiza una buena estimación del β. Figura 6-13: Error entre la β estimada y la β de la prueba del vehículo FOX. En estas pruebas con datos de experimentos reales se puede apreciar que el de mejor rendimiento es la red neuronal, ya que en su diseño toma en cuenta 4 entradas y además está mas entrenada.
63 63 Desarrollo de métodos para la estimación del ángulo de deslizamiento lateral en vehículos 7 CONCLUSIONES 7.1 Conclusiones En el presente Trabajo de Fin de Máster se han realizado 4 modelos con la finalidad de encontrar un modelo para estimar el ángulo de deslizamiento lateral de un vehículo en función de la velocidad longitudinal, el ángulo de guiñada y el ángulo de dirección. También se ha realizado un acercamiento al ángulo de deriva de un vehículo tratando de entender qué es, cómo se forma, de qué variables depende y que estrategias son seguidas para su medición y estimación. Los modelos para la estimación vistos se basan en el modelo de la bicicleta, tanto para sistema continuo como sistema discreto. El que logra una estimación mas cercana es el filtro de Kalman ya que toma en cuenta la señal del sensor y la del modelo. En estos la velocidad es una entrada de valor constante ya que por este motivo la estimación tiene un error mayor a la de la red neuronal que la considera como entrada variable. La red neuronal es la que mejor estima, cuando tiene un buen entrenamiento, la única desventaja es que se necesitan una gran cantidad de datos de experimentos y simulaciones para poder entrenarla y la estimación sea lo mas cercana a la realidad. La ventaja de la red neuronal es además que al tener como entrada la velocidad, esta puede ser variable y no una velocidad constante como en el modelo de la bicicleta utilizado para los otros modelos de estimación. Como trabajos futuros, se puede utilizar estos modelos como base para métodos combinados para poder mejorar la estimación del ángulo de deslizamiento lateral.
Anexos 70 70 xlabel('tiempo [s]') Parámetros del vehículo FOX clear all %Datos del Vehículo FOX %Largo=3.2; %m a=1.3; %m Izz=1047.5; %kgm2 Fy=5345.91; Caf=47000; Car=53000; m = 400.24; %kg b=1.22; Mz = 0.001; %Velocidad del vehículo en la simulación %V=120; %km/h %V=10*1000/3600;%m/s Vx=5;%m/s load('C:\Users\Adrián\Documents\MIERA\TFM\Pruebas Pista\26_06\pruebas.mat') load('C:\Users\Adrián\Documents\MIERA\TFM\Pruebas Pista\01_07\pruebas1.mat') %t00 = 0:0.025:149.975; t00 = 0:0.01:59.99; t00 = t00'; Delta0 = timeseries(prueba.FOX_DATA(:,20)', t00); Vx0 = timeseries(prueba.FOX_DATA(:,24), t00); YawRate0 = timeseries(prueba.FOX_DATA(:,4), t00); Beta0 = timeseries(prueba.FOX_DATA(:,3), t00); accel00 = timeseries(prueba.FOX_DATA(:,29), t00); %Sistema del modelo de la bicicleta A = [-(Caf+Car)/(m*Vx) ((-a*Caf+b*Car)/(m*Vx^2))-1; (-a*Caf+b*Car)/Izz (- (a^2*Caf+b^2*Car)/(Izz*Vx))]; B = [Caf/(m*Vx); a*Caf/Izz]; C=[0 1]; D=0; %State-space to TF SS=ss(A,B,C,D); TF=tf(SS); %Observador de Luenberger %Polos de la matriz L [Ka,Se,ee] = lqry(SS,10,0.1,0); L=[Ka(1) Ka(2)]'; %Sistema del modelo de la bicicleta A = [-(Caf+Car)/(m*Vx) ((-a*Caf+b*Car)/(m*Vx^2))-1; (-a*Caf+b*Car)/Izz (- (a^2*Caf+b^2*Car)/(Izz*Vx))]; B = [Caf/(m*Vx); a*Caf/Izz]; C=[0 1]; D=0; %Filtro de Kalman %Disctretizar matrices SS_K=ss(A,B,C,D); SS_d=c2d(SS_K,0.01); TF=tf(SS_d); A_d= SS_d.A;
71 71 Desarrollo de métodos para la estimación del ángulo de deslizamiento lateral en vehículos B_d= SS_d.B; C_d=SS_d.C; D_d=SS_d.D; G= [0.01;0.3]; H=0.5; Q=10; R=0.1; N=0; sim('EstimacionSlipAngleFOX.slx',50); Matrices del vehículo FOX A =[−49.97 −0.6442 3.3986 −30.2272] B=[6.0454 89.5676] 𝐶=[0 1] 𝐷=0 L=[0.0509 9.4962] Matrices discretas para Filtro de Kalman: A =[0.6066 −0.0043 0.0228 0.7391] B=[0.1834 0.5064] 𝐶=[0 1] 𝐷=0 (0–4) Presentación de resultados sim('EstimacionSlipAngleFOX.slx',50); figure plot(BetaLineal) hold on plot(Beta0) title('Slip Angle') ylabel('Beta [°]') xlabel('tiempo [s]') hold off legend('Beta-Lineal','Beta-FOX') axis([0 50 -inf inf]) figure(2) plot(YRLineal) hold on
Anexos 72 72 plot(YawRate0) title('Ang. de guiñada') ylabel('YawRate [°]') xlabel('tiempo [s]') hold off legend('YR-Lineal','YR-FOX') axis([0 50 -inf inf]) figure(3) plot(Delta0) title('Ang. de giro') ylabel('Delta [°]') xlabel('tiempo [s]') %axis([0 50 -inf inf]) axis([0 50 -inf inf]) figure(4) plot(AyLineal) hold on plot(accel00) title('Aceleración lateral') ylabel('Ay [m/s2]') xlabel('tiempo [s]') hold off legend('Ay-Lineal','Ay-FOX') %axis([0 inf 0 inf]) axis([0 50 -inf inf]) figure(5) plot(error) title('Error Lineal-FOX') ylabel('error') xlabel('tiempo [s]') %Observador figure (6) plot(BetaObs) hold on plot(Beta0) title('Slip Angle') ylabel('Beta [°]') xlabel('tiempo [s]') hold off legend('Beta-Observador','Beta-FOX') axis([0 50 -inf inf]) figure(7) plot(YRObs) hold on plot(YawRate0) title('Ang. de guiñada') ylabel('YawRate [°]') xlabel('tiempo [s]') hold off legend('YR-Observador','YR-CarFOX') axis([0 50 -inf inf]) figure(12) plot(error1) title('Error Observador-FOX') ylabel('error') xlabel('tiempo [s]') figure(8) plot(Vx0)
73 73 Desarrollo de métodos para la estimación del ángulo de deslizamiento lateral en vehículos title('Velocidad Longitudinal') ylabel('velocidad [m/s]') xlabel('tiempo [s]') axis([0 50 -inf inf]) %Kalman figure (9) plot(BetaKalman) hold on plot(Beta0) title('Slip Angle') ylabel('Beta [°]') xlabel('tiempo [s]') hold off legend('Beta- Kalman'','Beta-FOX') axis([0 50 -inf inf]) figure(10) plot(YRKalman) hold on plot(YawRate0) title('Ang. de guiñada') ylabel('YawRate [°]') xlabel('tiempo [s]') hold off legend('YR- Kalman'','YR-FOX') axis([0 50 -inf inf]) figure(11) plot(error2) title('Error Kalman-FOX') ylabel('error') xlabel('tiempo [s]') Red Neuronal import torch.nn as nn import torch.nn.functional as F import torch import torch.optim as optim import numpy as np import pandas import matplotlib.pyplot as plt class NeuralNetwork(nn.Module): def __init__(self,num_inputs, num_outputs,lr): super(NeuralNetwork, self).__init__() self.input = nn.Linear(num_inputs,10) self.hidden = nn.Linear(10,10) self.hidden2 = nn.Linear(10,10) self.hidden3 = nn.Linear(10,10)
Anexos 74 74 self.output = nn.Linear(10, num_outputs) self.optimizer = optim.Adam(self.parameters(), lr=lr) self.loss = nn.MSELoss() def forward(self, x): x = self.input(x) x = self.hidden(x) x = self.hidden2(x) x = self.hidden3(x) out = self.output(x) return out def main(): # Creamos el objeto red neuronal # neural_network = NeuralNetwork(4,1, lr = 1e-4) data = pandas.read_csv('todos.csv') features = ['AyG_S1','Steer_SW','Vx','AVz'] # Entrenamiento # num_of_batchs = 10000 batch_size = 20 loss_buff = [] for i in range(num_of_batchs): neural_network.zero_grad() data_input = data.sample(batch_size) inputs = torch.tensor(data_input[features].to_numpy()).float() y_pred = neural_network(inputs) y_true = torch.tensor(data_input['Beta'].to_numpy().reshape(- 1,1)).float().detach() loss = neural_network.loss(y_pred,y_true) loss_buff.append(loss)
75 75 Desarrollo de métodos para la estimación del ángulo de deslizamiento lateral en vehículos loss.backward() neural_network.optimizer.step() print('Done!') plt.figure() plt.plot(loss_buff,'b') plt.grid() plt.xlabel('Training step') plt.ylabel('Loss') plt.show() # Validacion sobre el train set (trivial) # inputs = torch.tensor([data[features].to_numpy()]).float() beta_estimada = neural_network(inputs) beta_real = data['Beta'].to_numpy() plt.figure() plt.plot(beta_estimada.data.numpy()[0],'r') plt.plot(beta_real,'b') plt.grid() plt.legend(['Beta estimada', 'Beta real']) plt.show() validate_data = pandas.read_csv('FOX1.csv') inputs = torch.tensor([validate_data[features].to_numpy()]).float() beta_estimada = neural_network(inputs) beta_real = validate_data['Beta'].to_numpy() plt.figure() plt.plot(beta_estimada.data.numpy()[0],'r') plt.plot(beta_real,'b') plt.grid() plt.legend(['Beta estimada', 'Beta real']) plt.show() if __name__ == '__main__': main()