FUSION DE GPS DIFFERENCIAL Y MEDIDOR DE INERCIA PARA ESTIMAR EL ESTADO DE UN VEHÍCULO DE PRUEBAS Autor: Arronte Arroyuelos, Belén. Director: Hesse, Tobias. Entidad Colaboradora: Hella KGaA Hueck & Co. RESUMEN DEL PROYECTO Sistemas de conducción asistida están siendo desarrollados por la mayoría de las marcas automovilísticas con el fin de disminuir los accidentes de tráfico. Este proyecto representa una parte de un proyecto de mayor alcance sobre conducción asistida basada en evitar un obstáculo a través del planeamiento de la trayectoria del vehículo. Para planear la trayectoria es necesario, a parte del conocimiento del estado del obstáculo, el estado del vehículo. Este proyecto explicará al lector como se puede calcular el estado del vehículo de manera precisa y a una frecuencia de muestreo suficientemente alta (100Hz). Para conseguir esto, se fusionará a través de un filtro Kalman un GPS (Global Positioning System) y un medidor de inercia (Inertial Measuring Unit IMU). Tras una introducción general en el primer capítulo, el capítulo 2 explica como los dos aparatos de medida utilizados en el proyecto, GPS e IMU, funcionan y porqué uno necesita del otro para que funcionen de manera correcta. Para conocer el estado cinemático del vehículo son necesarios ambos aparatos. El GPS sólo proporciona posición, mientras que el medidor de inercia proporciona aceleraciones, orientación y velocidades de giro; sólo fusionando ambos aparatos se podría estimar la velocidad del vehículo de una manera suficientemente precisa. Por otra parte, la frecuencia de muestreo del GPS sólo es 20Hz, mientras que para el IMU es 100Hz. El filtro de Kalman también puede ser una potente herramienta para estimar la posición del vehículo a la frecuencia de muestreo del IMU. El capítulo 3 consiste en una descripción general de la estructura del filtro Kalman tanto desde un punto de vista matemático, como desde un punto de vista de control. Se presenta el algoritmo de Kalman, un algoritmo recursivo que consiste dos ecuaciones de actualización del tiempo y tres de actualización de la medida. Estas ecuaciones, al igual que las variables entrada y salida del filtro, están también explicadas en este capítulo. En el capítulo 4 nuevamente se explica el filtro Kalman, pero esta vez para el caso particular de estimación de variables de estado cinemático de un vehículo usando las medidas del GPS e IMU como entradas del filtro, y obteniendo la velocidad del vehículo como salida. En este capítulo son deducidas todas las matrices y vectores que aparecen en el algoritmo de Kalman. En capítulo 5 se centra en el trabajo práctico realizado para llevar a cabo el proyecto, principalmente, trabajar con los aparatos de medida y programar el algoritmo. El GPS usado es diferencial, donde la estación móvil se sitúa sobre el techo del vehículo de pruebas y recibe las correcciones de la estación base (fija). El IMU también está situado sobre el techo del vehículo, al lado de la antena del GPS. Un programa implementado en C++ es el encargado de capturar los datos tanto del GPS como del IMU y guardarlos en un archivo. Los datos son importados del archivo a Matlab, donde se usarán como entradas del filtro. Estas entradas han de ser modificadas o adaptadas para encajar en las ecuaciones de Kalman que serán programadas en Matlab. También será mostrado en este capítulo un pseudocódigo del programa. Finalmente, el capítulo 6 muestra los resultados obtenidos. Se hicieron una serie de test, conduciendo de distintas maneras, para comprobar como de bien funciona el filtro implementado. Se realizará una descripción de estos test y una serie de gráficos mostrarán las variables de interés. Entre estas gráficas, la más interesante es en la que se enseña una comparativa entre la posición del vehículo estimada a la frecuencia de muestreo del IMU y la medida del GPS. Otra gráfica que tiene especial interés es aquella en la que se comparan los resultados del filtro de Kalman implementado en este proyecto con los de una plataforma comercial "IMAR", que ya tiene un filtro de Kalman internamente implementado. Esta comparación servirá como herramienta para validar el filtro de Kalman implementado en este proyecto, será la gráfica en la que se basen las conclusiones. Al final del capítulo se mostrarán las conclusiones del proyecto, cómo de precisos son los aparatos de medida, y cómo de bueno es el filtro Kalman implementado. Finalmente una breve descripción de los futuros desarrollos a tener en cuanta es planteada. SENSOR FUSION OF DIFFERENTIAL GPS AND INERTIAL MEASURING UNIT TO MEASURE STATE OF TEST VEHICLE Driver assistance systems are being developed by most car brands to try to decrease the high number of traffic accidents in current times. This project is part of an overall driver assistance project based on obstacle avoidance path planning. Of course, in order to plan the path, as well as knowledge of the obstacle's state, the vehicle's state is also necessary. This thesis will show the reader how the vehicle's state can be known accurately and at a high update rate (100Hz). To achieve this goal, a Global Positioning System GPS and an Inertial Measuring Unit IMU are fused by a Kalman filter. After a general introduction is made in the first chapter, chapter 2 explains how the two measuring devices involved in the project, GPS and IMU, work and why one is of no use without the other. In order to know the vehicle's kinematic state both devices are necessary. The GPS is only able to provide position, while the IMU provides only acceleration, orientation and turning rates, only by fusing both of them the vehicle's velocity estimation is accurate enough. Furthermore, the GPS' update rate is only 20Hz, while the IMU update rate is 100Hz. Kalman filter fusion can also be a tool for estimating the vehicle's position at the IMU's update rate. Chapter 3 describes the general structure of a Kalman filter both from a mathematical as from a control point of view. The Kalman algorithm is presented, a recursive algorithm consisting on 2 time update equations and 3 measurement update equations. These equations, as well as the Kalman filter inputs and outputs, are also explained in this chapter. In Chapter 4 the Kalman algorithm is once more described, but this time for the particular case of vehicle state estimation using the GPS and IMU measurements as Kalman filter inputs, and obtaining the vehicle's position and velocity as outputs. All matrices and vectors involved in the Kalman algorithm are clearly deduced for this particular case. Chapter 5 concerns all the practical work developed for this thesis, this is, working with the measuring devices and programming the algorithm. The GPS used is a differential GPS consisting on a rover station fixed on the roof of test vehicle which receives corrections from a fixed base station. The IMU is also fixed on the roof of the test vehicle next to the GPS antenna. A C++ implemented program is in charge of logging the data from both the GPS and the IMU and saving it on a file. The data is imported from the file to Matlab to be used as Kalman filter inputs. These inputs have to be modified or adapted to fit the Kalman filter equations that are programmed in Matlab. A pseudocode of the programmed filter can also be found in this chapter. Finally, chapter 6 presents the results obtained. Several test are taken, driving in different ways to test how well the implemented Kalman filter works. A description of these test is made and a series of graphics show the behavior of the variables of interest. Among these graphics, the most interesting one is that showing the vehicles position estimation at the IMU's update rate compared with the GPS position measurement. Another graphic that will have special importance is the one were the results of the Kalman filter implemented in this thesis are comparer to the ones obtained from a commercial platform "IMAR", which already has an internal Kalman filter implemented. This comparison will serve as a tool to validate the Kalman filter here implemented, it will be the graphic on which the conclusions will be based. At the end of the chapter conclusions on how accurate the measuring devices are and how good the Kalman implementation is are reflected. Finally a brief note on the future challenges this thesis arises is made.