robótica en entornos urbanos

7
Robótica cooperativa e integración con sensores en el ambiente. Aplicaciones en entornos urbanos. Luis Merino 1 , Jesús Capitán 2 , Aníbal Ollero 2 Grupo de Robótica, Visión y Control (http://grvc.us.es) 1 Escuela Politécnica Superior, Universidad Pablo de Olavide, Crta. Utrera km. 1, Sevilla, [email protected] 2 Escuela Superior de Ingenieros, Universidad de Sevilla, Camino de los Descubrimientos s/n, Sevilla {jescap,aollero}@cartuja.us.es INTRODUCCIÓN Los escenarios de aplicación de la robótica han evolucionado en las últimas décadas, desde entornos muy simples y controlados a entornos muy dinámicos en exteriores. Al mismo tiempo, para afrontar ciertas aplicaciones, la cooperación en grupos de varios robots se ha convertido en una necesidad. Una tendencia en la actualidad es la investigación en sistemas que consideren la colaboración entre robots y sensores heterogéneos presentes en el entorno para multitud de aplicaciones, como robótica de servicio en entornos urbanos, o monitorización de desastres. La razón fundamental es que estas aplicaciones involucran entornos dinámicos, con condiciones cambiantes para la percepción, etc. En la mayoría de las ocasiones, un único agente (por ejemplo un robot o una cámara) no permite conseguir la robustez y eficacia necesarias. En estos casos, la cooperación de diferentes agentes (robots, sensores en el entorno) puede ser muy relevante. Por otro lado, hay un creciente interés en la robótica de servicio; cada vez son más frecuentes aplicaciones de robots en entornos urbanos, para tareas como el guiado y asistencia de personas, transporte de personas y objetos, etc. En este artículo se muestran resultados de robótica cooperativa en este tipo de entornos. El artículo muestra resultados obtenidos con un sistema que consta de una flota de robots móviles, una red de cámaras fijas, así como una red inalámbrica de sensores. Todos estos elementos pueden comunicarse entre sí de forma inalámbrica, y forman lo que se llama un sistema de robots en red (Network Robot System, NRS). El sistema ha sido desplegado en un entorno urbano. El artículo mostrará cómo la cooperación entre los distintos elementos puede ser beneficiosa. Por ejemplo, la fusión de la información de los distintos elementos permite un seguimiento más preciso, así como hacer frente a oclusiones, en tareas como el guiado de personas. El artículo mostrará algunos resultados obtenidos en el proyecto europeo URUS URUS (Ubiquitous Networking Robotics in Urban Settings) [6]. ROBOTS MÓVILES EN ENTORNOS URBANOS Una de las posibles aplicaciones de la robótica móvil en robótica de servicio es el guiado e incluso el transporte de personas y objetos en entornos urbanos. Por ejemplo, en zonas peatonales o zonas que se convierten en peatonales en las ciudades para mejorar la calidad de vida de las ciudades. En este caso, los robots deben ser capaces de navegar a través de calles al mismo tiempo que las personas y posiblemente otros robots. Romeo es un coche eléctrico que ha sido modificado con sensores, actuadores y procesadores para la navegación autónoma. Sus capacidades se han incrementado para poder navegar en entornos urbanos. La figura 1 muestra al robot y los principales sensores que usa Romeo para realizar sus tareas. Dispone de codificadores en las ruedas para la estimación de la velocidad, giróscopos y una unidad de media inercial para estimar sus ángulos y velocidades angulares. Asimismo, dispone de 4 sensores de distancia láser y una cámara para la navegación y la localización.

Upload: ignaciocalderonb

Post on 09-Apr-2016

3 views

Category:

Documents


0 download

DESCRIPTION

Robótica cooperativa e integración con sensores en el ambiente.Aplicaciones en entornos urbanos.

TRANSCRIPT

Robótica cooperativa e integración con sensores en el ambiente. Aplicaciones en entornos urbanos.

Luis Merino1, Jesús Capitán2, Aníbal Ollero2

Grupo de Robótica, Visión y Control (http://grvc.us.es) 1Escuela Politécnica Superior, Universidad Pablo de Olavide, Crta. Utrera km. 1, Sevilla, [email protected]

2Escuela Superior de Ingenieros, Universidad de Sevilla, Camino de los Descubrimientos s/n, Sevilla

{jescap,aollero}@cartuja.us.es

INTRODUCCIÓN Los escenarios de aplicación de la robótica han evolucionado en las últimas décadas, desde entornos muy simples y controlados a entornos muy dinámicos en exteriores. Al mismo tiempo, para afrontar ciertas aplicaciones, la cooperación en grupos de varios robots se ha convertido en una necesidad. Una tendencia en la actualidad es la investigación en sistemas que consideren la colaboración entre robots y sensores heterogéneos presentes en el entorno para multitud de aplicaciones, como robótica de servicio en entornos urbanos, o monitorización de desastres. La razón fundamental es que estas aplicaciones involucran entornos dinámicos, con condiciones cambiantes para la percepción, etc. En la mayoría de las ocasiones, un único agente (por ejemplo un robot o una cámara) no permite conseguir la robustez y eficacia necesarias. En estos casos, la cooperación de diferentes agentes (robots, sensores en el entorno) puede ser muy relevante. Por otro lado, hay un creciente interés en la robótica de servicio; cada vez son más frecuentes aplicaciones de robots en entornos urbanos, para tareas como el guiado y asistencia de personas, transporte de personas y objetos, etc. En este artículo se muestran resultados de robótica cooperativa en este tipo de entornos. El artículo muestra resultados obtenidos con un sistema que consta de una flota de robots móviles, una red de cámaras fijas, así como una red inalámbrica de sensores. Todos estos elementos pueden comunicarse entre sí de forma inalámbrica, y forman lo que se llama un sistema de robots en red (Network Robot System, NRS). El sistema ha sido desplegado en un entorno urbano. El artículo mostrará cómo la cooperación entre los distintos elementos puede ser beneficiosa. Por ejemplo, la fusión de la información de los distintos elementos permite un seguimiento más preciso, así como hacer frente a oclusiones, en tareas como el guiado de personas. El artículo mostrará algunos resultados obtenidos en el proyecto europeo URUS URUS (Ubiquitous Networking Robotics in Urban Settings) [6]. ROBOTS MÓVILES EN ENTORNOS URBANOS

Una de las posibles aplicaciones de la robótica móvil en robótica de servicio es el guiado e incluso el transporte de personas y objetos en entornos urbanos. Por ejemplo, en zonas peatonales o zonas que se convierten en peatonales en las ciudades para mejorar la calidad de vida de las ciudades. En este caso, los robots deben ser capaces de navegar a través de calles al mismo tiempo que las personas y posiblemente otros robots. Romeo es un coche eléctrico que ha sido modificado con sensores, actuadores y procesadores para la navegación autónoma. Sus capacidades se han incrementado para poder navegar en entornos urbanos. La figura 1 muestra al robot y los principales sensores que usa Romeo para realizar sus tareas. Dispone de codificadores en las ruedas para la estimación de la velocidad, giróscopos y una unidad de media inercial para estimar sus ángulos y velocidades angulares. Asimismo, dispone de 4 sensores de distancia láser y una cámara para la navegación y la localización.

Fig. 1: Sensores de Romeo. Los sensores más importantes se dedican a la localización (GPS, giróscopos, codificadores, láser Sick), construcción de mapas y navegación (láseres Hokuyo).

La figura 2, a la izquierda, muestra los aspectos básicos de la arquitectura software. Para localizarse, Romeo usa odometría, obteniendo su posición en 6 grados de libertad (posición y orientación). Para compensar la deriva asociada a la odometría, Romeo posee un receptor GPS diferencial. Sin embargo, en entornos urbanos, a veces no se dispone de medidas GPS, o bien éstas se ven afectadas por interferencias multi-trayecto, lo que puede dar lugar a estimaciones erróneas. Además, en muchos casos es necesario localizarse respecto a un mapa previo del lugar, para realizar tareas como guiar a alguien a una localización determinada (una plaza, calle, etc). Por ello, Romeo ha integrado uno de sus láseres en un algoritmo de localización basado en mapas desarrollado por Corominas et al. [3] [5], que permite cancelar la deriva a una frecuencia de aproximadamente 1 Hz. Las áreas peatonales, como por ejemplo un campus universitario, presentan una serie de retos para robots móviles tipo coche. La figura 3 muestra algunos ejemplos del campus de la Universidad Politécnica de Cataluña (Campus Nord). Pueden observarse escaleras, rampas ascendentes y descendentes, pequeños bordillos, árboles, etc. Esto significa que una representación 2D del entorno no será suficiente en general. Además, por supuesto, hay gente, por lo que una evitación de obstáculos dinámicos es necesaria. Por tanto, para la navegación, Romeo construye y emplea una representación 3D del entorno (Fig. 2, derecha). A partir de esta representación, es posible derivar un mapa de transversabilidad, es decir, un mapa en el que cada celda indica si puede ser atravesada por Romeo o no. El análisis para decidir esto depende fundamentalmente de la pendiente presente en cada punto del mapa. Al mismo tiempo, se deben evitar los obstáculos móviles presentes. Los comandos de evitación de obstáculos móviles se combinan con el seguimiento de caminos mediante un gestor de comportamientos que asegura que no se producen colisiones mientras se trata de seguir el camino indicado por el planificador lo más fielmente posible.

Fig. 2. Izquierda: arquitectura básica de Romeo. Derecha: información 3D obtenida por Romeo empleando sus láseres. Se pueden identificar distintos obstáculos, como escaleras (derecha), árboles y pequeños bordillos.

Fig. 3: El escenario contiene algunas zonas complicadas, como escaleras, pendientes, árboles y pequeños obstáculos. Por ultimo, Romeo posee a bordo cámaras que se emplean para obtener la posición de personas (lo que se puede emplear en tareas de guiado o de interacción con personas). Los algoritmos para determinar esta posición se basan en una combinación de detección y seguimiento. El algoritmo de seguimiento se basa en la técnica mean-shift. Un algoritmo de detección de caras [7] se ejecuta en paralelo; los resultados de ambas técnicas se combinan, de modo que cuando el seguimiento se pierde, el detector permite recuperar a la persona. Como resultado, el robot puede estimar la posición de la cara de una persona en el plano de la imagen. Aplicando razonamientos geométricos, sería posible estimar la posición de la persona con relación al robot. (Fig. 4).

Fig. 4. Seguimiento visual de personas para guiado.

RED DE CÁMARAS FIJAS Una red de cámaras fijas también se considera en el sistema. Dichas cámaras pueden cubrir parte del entorno, y permite seguir objetos de interés. Esta información puede combinarse con la propia información que obtienen los robots para mejorar la percepción del entorno del mismo. El sistema empleado es capaz de seguir objetos de interés tanto dentro de una cámara como entre cámaras diferentes sin necesidad de una calibración explícita e incluso en ausencia de solape en sus campos de visión. La técnica ha sido desarrollada por Gilbert and Bowden [4]. Los objetos de interés se detectan en cada cámara empleando substracción de fondo. Al mismo tiempo, un filtro de Kalman permite unir temporalmente los objetos, estimando las trayectorias de los objetos para una misma cámara. Al mismo tiempo, cuando un objeto de interés sale de una cámara y entra en otra, el sistema es capaz de seguir e identificar dicho objeto incluso en el caso de que las cámaras no cubran una zona común. Esto se consigue empleando dos características, el color y los movimientos de objetos entre cámaras. En una fase de aprendizaje, se estiman los enlaces temporales más probables entre las distintas cámaras del sistema. Esto, combinado con el color de los objetos permite al sistema saber si un objeto ha sido previamente seguido en otra cámara o si se trata de un objeto completamente nuevo. La figura 5 muestra un ejemplo en el que la misma persona es seguida por 3 cámaras que tienen muy poca o ninguna superposición.

Fig. 5. Una misma persona es seguida mediante 3 cámaras distintas, con poco o ningún solape en sus campos de visión. RED INALÁMBRICA DE SENSORES Los últimos avances en electrónica de baja potencia y sistemas de comunicación inalámbrica han dado lugar a una nueva generación de dispositivos capaces de medir variables de su entorno así como de procesar esta información. Además, dichos dispositivos disponen de comunicaciones inalámbricas y son capaces de formar redes ad-hoc, de modo que es posible rutar toda la información hacia un concentrador. A estos sistemas se les denomina redes inalámbricas de sensores (Wireless Sensor Networks, WSNs).

Fig. 6. Izquierda: uno de los nodos empleados en el sistema. Derecha: arquitectura de la red de sensores.

En el sistema descrito en el artículo se emplea también una red de nodos Mica2. Cada Mica2 (Fig. 6, izquierda) tiene un conjunto de sensores (como sensores de humedad, iluminación, acelerómetros), un pequeño procesador y un módulo de comunicaciones. Estos nodos se pueden emplear para aplicaciones de monitorización. Además, el nivel de señal recibido por el conjunto de nodos estáticos se puede emplear para inferir la posición de un objeto móvil o una persona que cargue uno de estos nodos. Por tanto, una de las aplicaciones desarrollada para el sistema es un algoritmo capaz de estimar la posición de nodos móviles en la red. Todos estos sensores se integran en el sistema a través de una puerta de enlace que recibe toda la información de los nodos (Fig. 6, derecha). Como se comentó, estos nodos crean una red para poder retransmitir toda la información.

ALGUNOS RESULTADOS Los distintos sistemas descritos anteriormente han sido en misiones tales. Para el guiado de una persona, el robot debe ser capaz de navegar La figura 7 muestra algunos resultados de navegación de Romeo en el escenario. Para ello, emplea la arquitectura descrita más arriba. Uno de estos experimentos corresponde a una hipotética misión de guiado, en la que el robot debe guiar a una persona de un punto a otro del mapa.

Fig. 7: Dos misiones de Romeo. El escenario completo tiene unas dimensiones de 100 por 100 metros.

Para poder guiar a alguien, es necesario estimar la posición de dicha persona para ajustar el movimiento del robot. Como se comentó, una red de sensores está desplegada en el entorno, compuesta por decenas de nodos estáticos capaces de monitorizar diversas variables del entorno. Al mismo tiempo, esta red se puede emplear para estimar la posición de un nodo móvil de la misma red a partir de la potencia de señal radio recibida por los nodos estáticos. Este mecanismo se emplea para tener medidas adicionales para el seguimiento de personas (Figura 8, izquierda).

Fig. 8: Izquierda: montaje para el seguimiento de personas empleando niveles de señal radio. Derecha: cada medida de señal delimita una zona admisible para la posición de la persona dentro del mapa.

El algoritmo para la estimación de la posición del nodo móvil está basado en un filtro de partículas. En dicho filtro, la estimación actual de la posición del nodo se describe por un conjunto de partículas, cada una de las cuales representa una hipótesis sobre la posición real de la persona que lleva el nodo (figura 8, izquierda). En cada iteración del filtro, modelos de movimiento de la persona e información del mapa se emplea para predecir la posición futura de las partículas. El uso de mapas permite descartar movimientos poco probables. Cuando los

nodos estáticos reciben nuevos mensajes del nodo móvil, el peso de las distintas partículas se ajusta teniendo en cuenta la potencia recibida. Si se consideran modelos de propagación de la señal radio, es posible calcular la verosimilitud de una hipótesis (partícula) a partir de la distancia al nodo receptor según dicha hipótesis [1]. Cada mensaje restringe la posición de las partículas a un anillo circular alrededor del nodo receptor (Fig. 8, derecha). Como resultado, el filtro proporciona estimaciones de la posición 3D del nodo móvil con una precisión que puede llegar a ser de 1 metro en función de la densidad de nodos de la red. La figura 9 muestra la evolución de las partículas para un experimento de guiado. La figura 10 muestra la posición estimada, comparada con la posición del robot que la guía (que se encuentra unos metros más adelante).

Fig. 9: Evolución de las partículas durante uno de los experimentos de seguimiento.

Fig. 10: Posición estimada de la persona (verde) comparada con la posición del robot (azul) en una misión de guiado.

REFERENCES

[1] F. Caballero, L. Merino, P. Gil, I. Maza, and A. Ollero. A probabilistic framework for entire WSN localization using a mobile robot. Robotics and Autonomous Systems, 56(10):798–806, 2008.

[2] J. Capitán, L. Merino, F. Caballero, and A. Ollero. Delayed-State Information Filter for Cooperative Decentralized Tracking. In Proceedings of the International Conference on Robotics and Automation, ICRA, 2009.

[3] A. Corominas Murtra, J. Mirats Tur, A. Sanfeliu, “Real-time robot position tracking with particle filtering in continuous space”, Technical Report, IRI, 2009

[4] A. Gilbert and R. Bowden. ”Incremental Modelling of the Posterior Distribution of Objects for Inter and Intra Camera Tracking ”. Proc. BMVC’05, Oxford UK, 2005.

[5] J. M. Mirats Tur, C. Zinggerling and A. Corominas Murtra. Geographical information systems for map based navigation in urban environments, Robotics and Autonomous Systems, 57(9):922–930, 2009.

[6] A. Sanfeliu and J. Andrade-Cetto. Ubiquitous networking robotics in urban settings. In Proceedings of the 2006 IEEE/RSJ International Conference on Intelligent Robots and Systems, IROS 2006, 2006.

[7] P. Viola and M. Jones. Robust Real-Time Face Detection. International Journal of Computer Vision, 57:137–154, 2004.