Almacen‎ > ‎

2004 Evitación local de obstáculos por José Ramón Blanco

La evitación local de obstáculos tiene por finalidad evitar choques contra obstáculos imprevistos, que pueden aparecer ante el robot de modo repentino, como podrían ser una persona. Una manera de esquivarlos consiste en recoger la información de los sensores del robot y emplearla en algoritmos de tipo función potencial. Si los sensores son poco fiables, como los ultrasonidos, habrá que filtrar sus medidas en un mapa de celdillas. Si las distancias se miden con laser, será posible aplicar los algoritmos directamente. Normalmente se intentará que la velocidad media a la que se realizan las maniobras sean lo mayores posibles, ya que el resultado deseado es un robot moviéndose muy rápido y con una alta fiabilidad (la velocidad máxima de Trasgu es de 90 cm/s en velocidad lineal y 170 gr/s en velocidad de giro).







La primera tarea de este proyecto consiste en incorporar el nuevo sensor láser al robot, tanto físicamente como a nivel de software. El sensor se coloca sobre la base del robot y se comunica por el puerto serie con la CPU del mismo. Su funcionamiento se basa en un mecanismo de espejo rotatorio, que va dirigiendo un pulso láser en un recorrido horizontal de hasta 180º. Las medidas se calculan por tiempo de vuelo. Las medidas se toman mucho más rápido que con sistemas anteriores (sónar), en tiempos totales inferiores a 70ms, y da medidas correctas sobre casi todo tipo de superficies. En las siguientes figuras se muestran el esquema del sistema de medida del láser, y una reconstrucción en 3D del laboratorio, obtenida al girar el sensor en vertical sobre la base del robot.


Empleando el sensor láser es posible tener respuestas más rápidas con más fiabilidad. En el ejemplo que se muestra, obtenido por Jose Ramón Blanco en su PFC, se implementa un algoritmo denominado DFH, que se desarrolla a partir del conocido método VFH++, de J. Borenstein, pero gracias a la fiabilidad y rapidez del sensor láser se trabaja directamente con el vector de distancias, en vez de trabajarcon una retícula de ocupación, ahorrando así tiempo de procesamiento. 

Se toman también en consideración la forma del robot así como las limitaciones dinámicas, como en el método original. Pero además se añaden elementos adicionales como un control de velocidad en función de la distancia de colisión. Por último, se añade un factor cuadrático en la función de coste encargada de seleccionar el giro en cada iteración sirve para determinar que el robot se dirija preferentemente por las aberturas existentes en su camino hacia el objetivo. Este factor se reveló de gran utilidad, mejorando mucho las trayectorias seguidas por el robot. Las siguientes imagenes corresponden a idénticos experimentos, un recorrido de ida y vuelta del robot por el pasillo, con obstáculos interpuestos. El primero es el video real, el segundo la representación en tiempo real de las lecturas de los sensores y las decisiones correspondientes del algoritmo. Se puede observar como el robot se dirige directamente hacia la puerta para poder realizar su recorrido a través del pasillo.