Caracterización de un sensor de rango láser de bajo costo previo a una implementación de Slam
Víctor Costella 1, Humberto Rodríguez 1
1Universidad Tecnológica de Panamá
{victor.costella, humberto.rodriguez}@utp.ac.pa
Resumen: una propiedad básica que debe poseer cualquier vehículo autónomo es su capacidad de desplazarse libremente a través de su ambiente de trabajo. La navegación robótica autónoma se consigue cuando el problema computacional denominado Localización y Mapeado Simultáneo (SLAM) es resuelto. Para conseguir esto, el robot móvil debe calcular su posición aproximada al mismo tiempo que construye y actualiza un mapa de ambiente. Tradicionalmente, se utilizan las lecturas odométricas y los rangos de los objetos circundantes obtenidos por medio de un sensor de rango láser. La estimación de la posición del robot es mejorada en la medida en que la data sensoriales recolectada, manejada y modelada apropiadamente. Debido a su rapidez, exactitud, resolución angular y amplia área de barrido, el sensor de rango láser ha sido usado en muchas aplicaciones para resolver el problema de SLAM con éxito, pero siempre existe un compromiso entre su costo y su desempeño. En este artículo se presenta una caracterización del sensor de rango láser Hokuyo URG-04LX_UG01, un sensor de bajo costo. El propósito final es establecer un modelo funcional para solucionar SLAM en interiores.
Palabras claves: sensor de rango láser, caracterización, extracción de características del ambiente, navegación.
Title: Characterization of a low cost laser rangefinder previous a Slam implementation
Abstract: a basic quality of any autonomous vehicle is its ability to move freely through its working environment. Autonomous navigation is achieved when the computational problem denominated Simultaneous Localization and Mapping is solved. In order to achieve this, the mobile robot must estimate its approximate position at the time it builds and updates a map of the environment. Traditionally, odometric readings are used together with the ranges of the surrounding objects obtained through a laser range finder and for doing that utilizes odometry measurements of its displacement and the distances of the objects in the surroundings given by a laser range finder. The estimation of the robot position is improved if sensor data is collected, managed and modeled properly. Because of its speed, precision, angular resolution, and ample scanning area, the laser rangefinder has been successfully used to solve the SLAM problem in many applications, but there is always a compromise between its cost and its performance. In this paper, a characterization of the low cost Hokuyo URG-04LX_UG01 laser rangefinder is presented. The final goal is to establish a functional model for solving indoor SLAM.
Key words: laser rangefinder, characterization, environmental feature extraction, navigation.
Tipo de artículo: original
Fecha de recepción: 29 de abril de 2016
Fecha de aceptación: 16 de noviembre de 2016
Introducción y motivación
En robótica, el problema computacional denominado Localización y Mapeado Simultáneo (SLAM) consiste en ubicar la posición de un robot al mismo tiempo que construye mapas del ambiente. Debido a que la ubicación de las características del ambiente depende de la posición del robot, y la posición del robot es determinada de acuerdo a la ubicación de las características del ambiente, SLAM es un problema complejo, que ha sido estudiado durante tres décadas [1]. SLAM representa, sin embargo, la mayor esperanza, de conseguir en un futuro próximo la navegación robótica autónoma en cualquier tipo de ambiente. En su evolución, SLAM ha sido resuelto a través de dos métodos principales: Filtro extendido de Kalman y Rao-Blackwellis [2,3]. Se han dado soluciones para el problema en interiores y exteriores [4,5], con distintos tipos de agentes [6,7], y con variados sensores [8,9]. Ya se han planteado muchas soluciones al problema de SLAM, pero un reto importante consiste en garantizar que la técnica funciona con bajo presupuesto, pues existe siempre un compromiso entre el costo de los sensores y la exactitud de la localización. Tradicionalmente, el sensor de rango láser ha sido utilizado para resolver SLAM en 2D. Esto se debe a la precisión y exactitud de las mediciones, el amplio barrido en forma de abanico, alta velocidad de muestreo, y su muy buena resolución [10].
2. Formulación del Problema de SLAM con Sensor de Rango Láser
Consideremos un robot autónomo que navega en un ambiente 2D. La posición del robot 𝐱 es de tipo probabilística, con toma de datos en un ambiente ruidoso. El vector que representa el estado del robot en el instante de tiempo k tiene la forma:
𝐱 𝑘=[𝑥 𝑦 𝜃]T (1)
Se asume que el ambiente debe estar poblado de objetos que poseen características rectilíneas, por ejemplo, paredes, puertas, cajas, o estantes. El sensor de rango láser montado en el robot toma distancias desde su probable ubicación. Las lecturas son captadas en series de rangos y ángulos, de las cuales pueden ser extraídas características lineales, considerando un coeficiente de correlación lineal es aceptable. En [10] se detallan los algoritmos generales para la extracción de líneas a partir de las lecturas de un sensor de rango. Como puede observarse en la figura 1, el conjunto de líneas debe ser parametrizado de la forma 𝑙𝑖=[𝜌𝑖,𝛼𝑖], donde 𝜌𝑖 y 𝛼𝑖 representan respectivamente los rangos y ángulos de los segmentos de lineas que parten del origen global del mapa. Es necesario, entonces, obtener coordenadas globales a partir de coordenadas del robot. Entonces, también la representación del ambiente puede hacerse por medio de un conjunto de características 𝑓𝑖=[𝑥 𝑓𝑖,𝑦 𝑓𝑖]. Las posiciones de estas características son extraídas al punto de intersección de las líneas originales con las líneas normales desde el origen global, o, en el caso de las esquinas, de la intersección de las líneas originales [11].
Figura 1. Representación de la posición del robot y de las características lineales del ambiente en coordenadas globales.
Ambos, el estado del robot y el estado de las balizas requieren de modelos de incertidumbre. El modelo de incertidumbre del estado del robot se define por medio de la ecuación:
𝐱 𝑘+1=𝑓(𝐱k,𝐮k1)+𝐰𝑘+1(2)
Donde f es una función de aproximación lineal, y:
𝐮𝑘 es el vector de entradas de control,
𝐰𝑘 es el vector de ruido en el proceso que se asume tiene una covarianza promedio de cero.
El modelo de incertidumbre de las observaciones está definido de la siguiente forma:
𝐳k=h(𝐱k)+𝐯k (3)
Donde h es una función que aproxima la medición, y 𝐯𝑘 es el vector de ruido en la medición y que se asume tiene una covarianza promedio de cero.
Asumiendo observaciones en forma de puntos, es posible obtener la matriz:
(4)
que representa la matriz de covarianza en los procesos de medición. Debido a que el error en la medición del estado del robot es acumulativa (producto de las lecturas odométricas), la solución de SLAM depende en gran medida de un modelo robusto de medición de las características del ambiente, por lo que la caracterización del sensor de rango láser es crítica para que la localización del robot y el mapeado del entorno sean certeros. No se profundizará más en el resto de los procesos de SLAM, pues no son los objetivos de este artículo. El propósito de lo discutido anteriormente es establecer la importancia de un modelo de error del sensor de rango láser y sus mediciones, pues la solución de SLAM depende en gran medida de modelos apropiados.
3. Discusión de las especificaciones técnicas del Hokuyo URG-04LX_UG01
Las principales especificaciones técnicas del sensor de rango Láser Hokuyo URG-04LX_UG01 [12] son brindadas en la tabla 1. Como puede observarse en la tabla, las pruebas fueron realizadas con papel blanco Kent 70mm x 70mm, en condiciones ambientales no especificadas. Cuando se realiza SLAM, las deficiencias causadas por la falta de modelos sensoriales adecuados pueden comprometer seriamente los resultados de localización de las características del entorno, y, por ende, la propia localización del robot. En la literatura no se encontró un estudio sobre el sensor Hokuyo URG-04LX_UG01, quizás porque representa el sensor de rango laser de características más básicas de la marca Hokuyo.
Tabla 1. Especificaciones técnicas del sensor de rango láser Hokuyo URG-044LX_UG01
Especificaciones Técnicas Hokuyo URG-04LX-UG01 | |
Fuente de Luz | Diodo Láser Semiconductor (λ=785nm) |
Detección de Distancia y Objeto Estándar | Con exactitud: 60-4,095mm (papel blanco Kent 70mm x 70mm o mayor) Rango Detectable: 20-5,600mm |
Exactitud | 0.06 - 1m: ±30mm 1-4m: 3% de la distancia detectada (Objeto estándar: papel blanco 70mm x 70mm) |
Resolución | 1 mm |
Ángulo de Barrido | 240° |
Resolución Angular | Aprox. 0.36° (360°/1024) |
Tiempo de Barrido | 100msec/scan |
Condiciones Ambientales (Temp./Humedad) | -10° ~ 50°C / 85% o menos (sin rocío o granizo) |
Resistencia a la luz del Ambiente | 10000Lx o menos (luz del sol) |
4. Configuración Experimental
Las pruebas experimentales se fundamentaron tanto en las especificaciones técnicas del Hokuyo URG-04LX_UG01 como en los trabajos de Okubo et al [13], Kneip et al[14], y Diosi y Kleeman [15]. Los trabajos mencionados caracterizan el Hokuyo URG-04LX y el Sick PLS, que tienen costos muy superiores al URG-044LX_UG01.
Los datos fueron tomados por medio de una aplicación programada para dicho efecto, en lenguaje Visual C#.NET, Visual C# 2010, edición Express. El lenguaje operativo utilizado fue Windows 7 Profesional. Para la realización de las pruebas se utilizaron las especificaciones del sensor como referencia. Por lo tanto, los rangos medidos comprendieron solo las distancias entre 60 y 4095 mm. Se acondicionó una superficie blanca con una escala, y sobre ella se corrieron las distintas pruebas. Las superficies medidas contaban con distinto color y brillo, y se utilizaron láminas de 82.5 x 55 cm. Las pruebas se realizaron luego de mantener encendido el sensor de rango láser por una hora.
Debido a que histogramas de pruebas previas mostraron una distribución casi gaussiana , las ecuación (5) fue utilizada para encontrar la media.
(5)
En general, se pueden reconocer cuatro fuentes principales de error en la medición del sensor de rango láser [15]:
Errores de los componentes eléctricos debidos a la temperatura.
Errores causados por la fuerza de la señal de retorno.
Errores aleatorios en la electrónica del receptor.
Truncamiento del cuantificador.
Tomando en cuenta estos factores, de acuerdo con Diosi y Kleeman [15], el error absoluto con respecto al valor esperado en la lectura, ∆𝑟, puede ser caracterizado por las principales fuentes de error
∆𝑟≈ 𝑟s+𝑟r+𝑟i+𝑟c+𝑟g(6)
Donde:
𝑟s = error para todas las lecturas con superficies similares
𝑟r = error debido al incremento con el rango
𝑟i= error producido por el cambio del ángulo de incidencia
𝑟c= error del cuantificador
𝑟g = ruido gaussiano
Los autores anteriores concluyen, sin embargo, que no necesariamente todos los errores anteriores aplican a todos los telémetros láser.
5. Resultados y su Discusión Errores Esporádicos
Durante los períodos de muestreo (cada 20000 lecturas), se dieron dos o tres lecturas con valores de entre 0 y 10 mm. Estas lecturas representan errores atípicos, fuera del rango mínimo del sensor (ver tabla 1), y fueron descartadas como mediciones válidas. Se atribuye este fenómeno a la saturación de la electrónica del receptor o del búfer de datos. Como no es posible modelar esta situación, dentro del programa se incorpora una función condicional para ignorar la lectura.
Errores Causados por el Brillo y Color de la Superficie Para que se tenga una idea de cuánto puede influir el color y brillo en las lecturas, se tomaron 500 muestras de distintos colores a distancias al objetivo de entre 20 y 4000 mm. Se utilizaron 14 colores distintos. Para dar una muestra, en la gráfica se muestran los resultados de dispersión para distintas superficies a una distancia de 2000 mm. El mínimo obtenido fue de 1977 mm y el máximo 2022 mm, representando errores de -1.15% a 1.1%. Este rango de error está dentro de los parámetros de exactitud prometida por el fabricante, es decir, menor al 3% (ver figura 2). Aun así se logró demostrar también que la dispersión cambia de acuerdo al tipo de superficie medida. El brillo de la superficie no resultó ser es un factor determinante. En muestras de blanco brillante versus blanco mate y rojo brillante vs rojo mate, la diferencia en el promedio no sobrepasó 1.1 mm.
Figura 2. Cambios en la dispersión de acuerdo al color y brillo de la superficie para una distancia de 2000 mm.
Tomando solo en cuenta los promedios de los 500 conteos, se puede modelar el comportamiento por medio de funciones lineales. La figura 3 muestra un ejemplo de 3 colores, y representa el ejemplo de que la linealidad se mantuvo durante las pruebas con cada color, realizadas variando la distancia cada 10 cm para cada color. Los rangos comprendidos para la prueba fueron de entre 20 y 4000 mm. La función lineal de error por la superficie toma la forma:
es(d)=ad+b-resperado (7)
Siendo 𝑎 y 𝑏 los parámetros normales de una línea, 𝑑 la distancia del sensor de rango al objetivo, y 𝑟𝑒𝑠𝑝𝑒𝑟𝑎𝑑𝑜 el valor de rango esperado en la medición.
Figura 3. Demostración de linealidad de la medición para los colores azul, marrón y morado.
Errores por temperatura y estabilización de la Electrónica
Esta prueba consiste en activar el sensor luego de por lo menos 8 horas de reposo. El objetivo a medir fue una lámina de papel blanco de color blanco de dimensiones 82.5 x 55 cm ubicada a distintas distancias, a un ángulo paralelo al eje horizontal del sensor. El tiempo de funcionamiento del sensor fue de una hora, con un total de 12462 conteos. Se realizaron ajuste en el programa para tomar solo la muestra central por barrido.
En la figura 4 se puede apreciar un patrón típico del arranque del sensor durante los primeros 30 minutos de operación. Inicialmente, la gráfica muestra una subida esporádica para luego realizar una caída lenta hasta estabilizarse. El periodo de estabilización ocurre a unos 25 minutos de haberse activado el sensor. Como se puede notar, existen algunos picos esporádicos en las lecturas.
Figura 4. Patrón típico de arranque durante los primeros 30 minutos de operación.
El modelado del error por calentamiento es crucial pues es una fuente de error mayor. El lóbulo inicial hasta la estabilización fue modelado promediando 10 períodos de calentamientos de 4 distancias distintas, haciendo un total de 40 períodos de calentamiento. Se tomaron los promedios de 100 muestras, y cada precalentamiento tuvo un total de 10000 muestras. Se restó la medición esperada, y se encontró el polinomio utilizando regresión polinómica :
𝑒𝑝(𝑚) = 8.8636771170987370
+ 2.0351736454547890 𝑚
− 4.6947605806032016 ×10-1 𝑚2
+ 4.1589305161886070 ×10-2 𝑚3
− 1.9441942207761252 ×10-3 𝑚4
+ 5.3502858075775480 ×10-5 𝑚5
− 9.0792950057841390 ×10-7 𝑚6
+ 9.5511112016285330 ×10-9 𝑚7
− 6.0038870709256960 ×10-11 𝑚8
+ 2.0297642090264837 ×10-13 𝑚9
− 2.7484074016284042 ×10-16 𝑚10
El cual arrojó un coeficiente de correlación r2≈0.98266.
Figura 5. Regresión polinómica promediando las lecturas de rango cada 100 muestras.
Error causado por el ángulo del Objetivo
Para comprobar la variación de la medición de acuerdo al ángulo del objetivo, se realizaron mediciones con rangos distintos, de 1.5, 2, 2.5, 3.0 y 3.5 m. Se promedió la variación del rango al rotar el objetivo (cartón blanco mate) de -80° a 80°en pasos de 5°. Después de cada promedió, se restó el valor de rango obtenido para el ángulo 0°. Como resultado, se obtuvo la gráfica de la figura 6, y el consecuente polinomio utilizando regresión polinómica:
𝑒𝑖(𝜑)= − 1. 5523670073569948
− 2. 4531065468912566 × 10-2 𝜑
− 1. 9600299500495410 × 10-3 𝜑 2
+ 1. 3571508889183155 × 10-5 𝜑 3
− 6. 2005257043723864 × 10-6 𝜑 4
− 2. 8506087714657082 × 10-9 𝜑 5
+ 2. 8938196741050577 × 10-9 𝜑 6
+ 2. 2405953647331787 × 10-13 𝜑 7
− 3. 1211003012517057 × 10-13 𝜑8
El cual arrojó un coeficiente de correlación r2≈0. 9740210
Figura 6. Variación de la medida de acuerdo al ángulo del objetivo.
Dispersión con la distancia del Objetivo
Este efecto no fue notado con todos los colores, solo con la muestra gris en particular. Quizás el fabricante reconoce este fenómeno, pues asegura que el error se mantendrá a 3% dentro de las distancias de operación (60-4,095mm). A medida que la distancia del objetivo aumenta, se puede ver que la distribución cambia dramáticamente. Para tener una idea del fenómeno, la diferencia entre la lectura mínima y la máxima para 1.5 m fue de 12, mientras que para la de 4.0 m fue de 30. Este fenómeno se puede apreciar en la figura 6. Se puede notar que el diámetro de la dispersión aumenta con la distancia, pero este fenómeno debería reflejarse también con otros colores.
Figura 6. Dispersión de las lecturas con las distancias al objetivo debido al color gris.
6. Conclusión
La distribución y el sesgo de las lecturas del sensor de rango láser del receptor dependen de la calidad de los componentes electrónicos relacionados a su receptor. Pero un modelo más elaborado puede compensar muchas de las deficiencias de diseño en un sensor de bajo costo. Se puede concluir que las principales fuentes de error del sensor Hokuyo URG-04LX_UG01 pueden ser modeladas de acuerdo a:
∆𝑒=𝑒s(𝑑)+𝑒p(𝑚) + 𝑒i(𝜑) (8)
Debido a que representan las principales causas de error en este sensor. Durante la configuración del experimento no fue observado el error por truncamiento, y por tanto, se consideró despreciable. Producto del estudio, los valores antes descritos han sido tabulados previamente para compensar los errores en las mediciones. Los demás errores son considerados insignificantes si se siguen las especificaciones del fabricante en cuanto a condiciones ambientales y rangos de medición se refieren. En cuanto al desempeño del sensor de rango láser Hokuyo URG-04LX_UG01 para realizar SLAM en interiores, se concluye que es posible incluso disminuir el error detallado por el fabricante con un modelado adecuado, lo cual lo califica como un sensor adecuado para robótica móvil en interiores.
Referencias
H. Durrant-Whyte , T. Bailey. “Simultaneous Localisation and Mapping (SLAM): Part I The Essential Algorithms”, IEEE Robotics and Automation Magazine, pp 99-108, 2006.
G. Dissanayake, P. Newman, H.F. Durrant-Whyte, S. Clark, M. Csobra. “A Solution to the Simultaneous Localisation and Mapping (SLAM) Problem”. IEEE Trans. Robotics and Automation, Magazine, 17(3): pp. 229-241, 2001.
M. Montemerlo, S. Thrun, D. Koller, B. Wegbreit. “Fast SLAM: A Factored Solution to the Simultaneous Localization and Mapping Problem”. In AAAI National Conference on Articial Intelligence, pp. 593-598, 2002.
J. Huang, D. Millman, M. Quigley, D. Stavens, S. Thrun , A. Aggarwal “Efficient, Generalized Indoor WiFi GraphSLAM”. Procedings of International Conference on Robotics and Automation, pp. 1038-1043, 2011.
P. Newman, D. Cole and K. Ho.”Outdoor SLAM using Visual Appearance and Laser Ranging”. In IEEE International Conference on Robotics and Automation (ICRA), pp. 1180-1187, 2006.
O. Stasse, A. Davison, R. Sellaouti, K.Yokoi. “Real-time 3D SLAM for Humanoid Robot considering Pattern Generator Information”. In IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 348-355, 2006.
C.H. Lee, M.J. Tahk. “Unmanned Aerial Vehicle Recovery Using a Simultaneous Localization and Mapping Algorithm without the Aid of Global Positioning System”. International Journal of Aeronautical & Space Science, 11(2), pp. 98–109, 2010.
A. J. Davison. “Real-Time Simultaneous Localisation and Mapping with a Single Camera”. In Proceedings on the IEEE International Conference on Computer Vision, p. 1403, 2003.
A. Chilian, H. Hirschmüller, M. Görner. “Multisensor Data Fusion For Robust Pose Estimation of a Six Leg Walking Robot”. IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 2497-2504, 2011.
V. Nguyen, A. Martinelli, N. Tomatis, R. Siegwart. “A Comparison of Line Extraction Algorithms using 2D Laser Rangefinder for Indoor Mobile Robotics”. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, 2005.
A. Garulli, A. Giannitrapani, A. Rossi, and A. Vicino. “Simultaneous Localization and Map Building Using Linear Features”. In IEEE Transactions on Robotics and Automation, vol. 19:2, 238-249, 2003.
Kamini, Maeda, Yamamoto and Mori. “Scanning Laser Range Finder URG-
04LX-UG01 - Specifications”. Hokuyo Automatic Co., LTD, 2009.
L. Kneip, F. Tâche, G. Caprari, R- Siegwart. “Characterization of the Compact Hokuyo URG-04LX 2D Laser Range Scanner”. IEEE International Conference on Robotics and Automation, 2009.
Y. Okubo, C. Ye, J. Borenstein. “Characterization of the Hokuyo URG-04LX Laser Rangefinder for Mobile Robot Obstacle Negotiation”. Proceedings of the IEEE International Conference on Robotics and Automation, vol. 3, pp 2512- 2518, 2002.
A. Diosi, L. Kleeman. “Uncertainty of Line Segments Extracted from Static SICK PLS Laser Scans”. In Proceedings of the Australasian Conference on Robotics and Automation 2003.