los robots móviles1

28
HP

Upload: alejandro-limones

Post on 05-Jan-2016

236 views

Category:

Documents


0 download

DESCRIPTION

Trabajo destinado a la comprension del movimiento de los robots moviles, con conceptos basicos para el lector

TRANSCRIPT

Page 1: Los Robots Móviles1
Page 2: Los Robots Móviles1

Los robots móviles son dispositivos de transporte automático, es decir, una plataforma mecánica dotada de un sistema de localización capaz de navegar a través de un determinado ambiente de trabajo, dotado de cierto nivel de autonomía en su desplazamiento y portando o no cargas. Sus aplicaciones pueden ser muy variadas y siempre están relacionadas con tareas riesgosas o complicadas para el ser humano.

Ejemplos clásicos son:

El traslado y acoplo de materiales Tareas de mantenimiento en áreas peligrosas Manipulación de materiales explosivos Exploración subterránea, etc.

Es necesario aclarar el concepto de autonomía, ya que solo se relaciona con el manejo de la energía, sin que también se refiera a la capacidad de percibir, moldear, planificar y actuar para alcanzar determinados objetivos sin la intervención o con la intervención mínima de un operador, ya que el robot se debe desenvolver en ambientes estructurados o no estructurados total o parcialmente conocidos. El papel de este debe de ser desempeñado por el propio sistema de control del vehículo al que se le debe de suplir con la inteligencia necesaria para mover al robot correctamente.

Los robots móviles operando en ambientes no estructurados deben de enfrentarse con incertidumbres en la posición e identificación de objetos. La incertidumbre es tal que trasladarse desde un punto A hasta un punto B es una actividad arriesgada para un robot móvil, en cambio para un manipulador industrial esta movilidad resulta trivial. En compensación por tener que enfrentarse con más incertidumbre de entorno, no se espera que un robot móvil tenga la misma precisión que un manipulador industrial.

El principal problema a resolver en un robot móvil es generar trayectorias y guiar su movimiento según estos en base a información proveniente del sistema de sensores, permitiendo al vehículo desplazarse entre dos puntos cualesquiera de una forma segura y sin colisiones. Esto exige diseñar sistemas de control de trayectoria (posición, dirección y velocidad) en varios niveles jerárquicos de manera que el procesamiento de la información asegura la mayor autonomía posible.

Navegación

En muchas aplicaciones, el entorno de trabajo es casi estacionario pues sus principales características permanecen constantes.

Page 3: Los Robots Móviles1

Un esquema simple del proceso de localización o navegación de un robot móvil, es el siguiente:

Un ejemplo de arquitectura propuesta trata de combinar la utilización de la técnica basada en mapas de cerdillas de probabilidad con la integración multisensorial utilizando un filtro extendido de kalmma e introduciendo la posibilidad de que se produzcan pequeñas variaciones en el entorno de trabajo. En esta arquitectura propuesta para conocer la posición de un robot existen varios métodos, algunos que pueden ser absolutos y otros relativos, el basado en el comparación de mapas es un tipo de procesamiento relativo que se pueda adaptar muy bien a un posicionamiento absoluto.

Las aproximaciones locales o relativas suelen ser diseñadas para compensar los errores odométricos, solo son capaces de localizar al robot dentro de unos límites obtenidos por su estado anterior y siempre conociendo su posición inicial. Las aproximaciones globales o absolutas son capaces en cualquier momento de dar la localización independiente del estado anterior y no es necesario saber la posición inicial.

Este método se engloba dentro de los locales pero incrementando el procesamiento computacional, se puede ubicar como un método de posicionamiento absoluto.

Se tienen los siguientes requerimientos metodológicos, debe de ser capaz de tratar con información imprecisa. Tiene que permitir la integración de los diferentes tipos de información que proporcionan los sensores a lo largo del tiempo. Debe de ser capaz de procesar todos los aspectos del entorno que presentan los sensores. Debe ser independiente del entorno. Debe ser posible su aplicación

Modelo del entorno

Actualiza

Sensores

Hipótesis

Actualización de la posición

Page 4: Los Robots Móviles1

independientemente de los errores sistemáticos que puedan presentar sus codificaciones incrementales.

El procesamiento se basa en la construcción de dos tipos de mapa, uno local a partir de las últimas informaciones captadas por los sensores y otro global que puede haber sido obstruido a partir de una herramienta gráfica o elaborando con información a través del tiempo o adquirido en una etapa previa de aprendizaje.

El mapa local será comparado con el global para obtener una posición y orientación estimados, la cual será combinada con la información procedente de las codificaciones incrementales acopladas a las ruedas mediante un filtro de kalmma para conseguir una mejora de la estimación.

El modelo de mapa se basa en la discretización del entorno en z’s o cuadrículas de una dimensión determinada previamente, el principio de este método radica en ir acumulando en cada una la probabilidad de que esté ocupada, de manera que se vaya reforzando que esa celda está ocupada o lo contrario.

El diagrama anterior nos muestra el método general para la localización de un robot móvil mediante la comparación de mapas. En él la búsqueda puede ser

Adquirir información sensorial

Construir mapa local

Establece correspondencia entre mapa local y mapa global almacenado

Usando Usando

Ubicar posición

FiltradoFusión sensorialModelado

Page 5: Los Robots Móviles1

restringida asumiendo que la posición inicial estimada es próxima a la posición real del robot y de esta forma restringir el área de exploración y búsqueda.

Es importante destacar que el método no actualiza continuamente la posición y orientación sino solo cada cierto intervalo (el necesario para que se construya un mapa local). Podrían elaborarse constantemente mapas locales, sin embargo esto conlleva un gran costo computacional y sólo tiene sentido cuando el entorno cambia constantemente.

Mapas de entorno

Un elemento fundamental de la localización es el mapa de entorno (modelo de representación de entorno). Este es una abstracción con la que se representan únicamente aquellas características que requieren de un elevado nivel de detalle, debido a que pueden ser demasiadas variables o no pueden ser detectadas con fiabilidad por los sensores.

El modelo de entorno es un elemento fundamental para la localización del robot, en general los algoritmos de localización suelen comparar las lecturas obtenidas por los sensores con el modelo del entorno actualizando la posición acorde con el resultado de esta comparación. La clasificación de los mapas de entorno es:

Mapas topológicos Mapas métricos

Los cuales a su vez se pueden dividir en mapas de rejilla y mapas geométricos.

Autolocalización

Los métodos de localización presentan como objetivo compensar el error relativo a la odometría que tiene lugar durante la navegación. Para ello se hace uso de la información proveniente de los sensores. La manera de clasificar los métodos de localización es muy variada y atiene a diferentes criterios. Una posible agrupación se da en tres grupos:

1. Métodos locales o globales2. Métodos activos o pasivos3. Métodos estáticos o dinámicos

Otra posible clasificación atiene al tipo de mapa de entorno utilizado y se basan en Landmarks o métodos probabilísticos.

Este método, el de Landmarks se basa en el reconocimiento que presentan puntos característicos del entorno siendo una referencia para determinar la localización del robot.

Page 6: Los Robots Móviles1

Para la consecución de este propósito es necesario y del robot móvil este dotado de un sistema sensorial para recoger la información del entorno y una vez que los Landmarks son detectados se contrastan con la información que se tiene del entorno y aplicando técnicas como triangulación, entre otras se puede determinar la posición del robot.

Este método se puede dividir en 4 fases, como se muestra a continuación:

La localización por marcas se puede clasificar según la naturaleza de las marcas de entorno, estas pueden ser marcas activas o marcas pasivas, y etas a su vez, artificiales o naturales.

Planificación y seguimiento de caminos

A. Navegación en robots móviles

La navegación es la técnica de conducir un robot móvil mientras atraviesa un entorno para alcanzar un destino o meta sin chocar con ningún obstáculo.

Cuando se desconoce el entorno, el robot debe poseer la capacidad de reaccionar ante situaciones inesperadas, esto se logra a través de la percepción del entorno mediante el uso de sensores. Mientras que si se trata de un entorno conocido, el uso de los sensores se vuelve secundario y las tareas a seguir serían: planificar una trayectoria óptima libre de obstáculos, a partir de puntos de partida y llegada y obviamente que el robot pueda seguir y cumplir físicamente esta trayectoria.

Se considera a un robot como un objeto rígido al cual se le puede asociar un sistema de coordenadas móvil:

Observación sensorial

Reconocimiento de landmarks

Información de entorno

Estimación de posición

Mapas {x , y ,φ}

Page 7: Los Robots Móviles1

Donde p es la posición y θ la orientación. La localización del vehículo en un determinado instante de tiempo se encuentra definida por la relación existente entre el sistema de coordenadas global Fg en virtud del cual está definido todo el

entorno de trabajo y su sistema de coordenadas locales asociado F r.

B. Métodos de planificación de trayectorias

1) Grafos de visibilidad: Para la generación del grafo, este método introduce el término de visibilidad, según el cual, define dos puntos del entorno como visibles si y solo sí se pueden unir mediante un segmento rectilíneo que no intercepte ningún obstáculo. En otras palabras, el segmento definido debe yacer en el espacio libre del entorno C. Se consideran como nodo del grafo a la posición inicial, la posición final y todos los vértices de los obstáculos, siendo el grafo el resultado de la unión de los nodos visibles, tal como se muestra en la figura.

2) Diagramas de Voronoi: Se encuentran entre las más importantes estructuras en geometría computacional, este diagrama codifica la información de proximidad entre elementos. Los diagramas de Voronoi se definen como una proyección del espacio libre del entorno en una red de curvas unidimensionales yacientes en dicho espacio libre. Formalmente se definen como una retracción (Janich, 1984) con preservación de la continuidad.

La principal idea de la construcción del diagrama de Voronoi es ampliar al máximo la distancia que existe entre el robot y los obstáculos, por tanto, el diagrama

Page 8: Los Robots Móviles1

resulta el lugar geométrico de las configuraciones que se encuentran a la misma distancia de los obstáculos más próximos del entorno.

3) Roadmap Probabilístico (PRM): Consiste en generar un número n de configuraciones libres de colisión de forma aleatoria y uniforme en toda el área de trabajo.

Se prosigue a conectar cada uno de los nodos con sus nodos más cercanos según una métrica que depende del número de objetos en el entorno de trabajo y finalmente se aplica un algoritmo que obtenga la ruta más óptima, en este caso el algoritmo A*.

4) Modelado del Espacio Libre: Igualmente en este método los obstáculos se los representa como polígonos. La planificación se lleva a cabo a través de los CRG, cilindros rectilíneos generalizados, y al igual que Voronoi, con el uso de los CRG se pretende que el robot se mueva lo más alejado de los obstáculos. La ruta será una configuración de CRG interconectados, tal que la configuración inicial o de partida se encuentre en el primer cilindro de la sucesión y la configuración final en el último cilindro.

Page 9: Los Robots Móviles1

5) Descomposición en celdas: En este método no se encuentra una sucesión de segmentos, sino una sucesión de celdas, por lo que es necesaria la construcción de un grafo de conectividad encargado de definir la ruta además de la descomposición de celdas.

Dentro de los métodos basados en descomposición en celdas, el método más sencillo es el de descomposición trapezoidal. Se construyen rectas paralelas al eje Y a partir de los vértices de cada elemento del entorno, estas rectas quedan delimitadas por el corte con las líneas de los elementos del entorno.

6) Campos Potenciales: Este método está basado en técnicas reactivas de planificación, esta técnica se centra en la planificación local en entornos desconocidos.

C. Generación de caminos

El camino se lo construye en base a la planificación de la ruta y debe estar libre de obstáculos, la importancia de un camino con buenas propiedades se basa en la capacidad del seguidor de caminos para ejecutar la navegación con el menor error posible. La función del generador es convertir una ruta en un camino, llevar al robot de una posición inicial a una final, de tal manera que se elimine la restricción de omnidireccionabilidad inherente a la definición de ruta.

El camino se define como la discretización de una curva continua que interpola ciertos puntos elegidos de la ruta calculada por el planificador. Por tanto, el problema de la definición de un camino con buenas propiedades pasa por la construcción de la función camino adecuado que las posea.

La base para realizar cualquier tarea mediante robots, es la planificación y seguimiento de rutas o trayectorias. Así, el objetivo es desarrollar e implementar algoritmos de seguimiento y planificación (global y local) de trayectorias de robots. La planificación global se realizó mediante el algoritmo A* aplicado sobre mapas de cultivo y la planificación local se realizó aplicando A* sobre un mapa 2D obtenido a partir de imágenes 3D de los obstáculos encontrados en el camino. En

Page 10: Los Robots Móviles1

cuanto el seguimiento de trayectorias, esta se realizó implementando una aproximación numérica de la trayectoria mediante el método de Euler. Los parámetros correspondientes a la dinámica del controlador de la trayectoria del robot fueron obtenidos mediante algoritmos genéticos. El mapa 3D fue generado a partir del sensor Kinect de Microsoft y sus datos procesados usando Matlab 2010b. Los resultados preliminares muestran que es posible implementar estos algoritmos en pequeños robots diseñados para cultivos hilerados. Proveyendo así, una metodología robusta que permite seguir las rutas asignadas con errores inferiores a RMSE=0.1m en trayectorias de 30m.

1) Planificación de trayectoria con A*.

El algoritmo A*, es un algoritmo que busca la ruta más corta (de menor costo) entre dos puntos. Es uno de los algoritmos de planificación más usados, debido a que de haber una solución, la encuentra y garantiza que es óptima.

En el escenario propuesto, el robot debe ir desde su posición actual, hasta el punto con maleza más cercano. La planificación de este recorrido la denominamos Planificación Global.

a) Planificación Global. Supóngase que el cultivo es dividido en una cuadrícula, y que el robot es de tamaño menor o igual que una casilla de esta cuadrícula. El Algoritmo A* se encarga de encontrar la ruta más corta, entre la posición actual y el punto de maleza más cercano (Figura 1a).

b) Planificación Local. Para evitar los obstáculos inesperados presentes en la ruta, el robot extrae información del mapa del entorno 3D, generada por el sensor Kinect de Microsoft (Figura 2a). El mapa 3D es adquirido empleando el Microsoft Kinect Windows SDK. A modo de interface con el modulo de planificación, se desarrolló una rutina en Matlab que se comunica con el SDK.

Page 11: Los Robots Móviles1

El proceso de extracción de información desde el mapa 3D, consiste en considerar que todo objeto de más de 8 cm de altura, es un obstáculo a evitar. De este modo, cada casilla de la grilla que contenga in objeto con valores de z > 8 cm, se considera una casilla ocupada (Figura 2d).

A estos obstáculos se les asigna una dimensión, en el plano xy , mayor a la real (la mitad del ancho del robot), con el propósito de evitar colisiones. En otras palabras, se hace un offset del obstáculo (Figura 2e).

Una vez que se tiene el mapa del entorno y los obstáculos en el, se genera una nueva trayectoria desde la posición actual a la de destino. Esta vez con una grilla de mayor densidad, con el propósito de generar suficientes puntos intermedios, que garanticen evitar la colisión con el obstáculo (Figura 2e).

Cuando el robot se encuentra con objetos que no están en su mapa, cambia al modo evasión de obstáculos. Este modo, genera un mapa de dos dimensiones en el plano xy.

2) Suavizado de la trayectoria mediante curvas de Bézier.

Page 12: Los Robots Móviles1

Una vez que se dispone de los puntos (generados por A*) por los que el robot debe pasar, estos son unidos mediante curvas de Bézier implementadas mediante el algoritmo de Casteljau. Las curvas de Bézier son paramétricas y diseñadas para unir suavemente un grupo de puntos. Estas curvas pueden ser de diversos grados, dependiendo del nivel de suavizado que se desee.

El requerimiento mínimo en planificación de trayectorias, es pasar por el punto de inicio y por el final con una dirección especifica. Así, el mínimo grado de la curvas de Bézier que satisface esta condición es tres.

3) Modelo cinemático del robot

Se considera un robot móvil Pioneer 3DX, tipo uniciclo. Un esquema del robot se muestra a continuación y se presenta su modelo cinemático en la Ecuación (1) en modo de matriz.

La posición del robot está definida por el punto h = [ x,y ], este punto está ubicado a una distancia a desde el centro del eje trasero del robot B. G es el centro de gravedad, E es el punto de ubicación del señor Kinect, C es el punto de ubicación de la rueda castor. ω, es la velocidad angular del robot. u y u , corresponden a las velocidades longitudinal y transversal del centro de masa del robot. ψ , corresponde al ángulo de orientación del robot.

Resultados

Page 13: Los Robots Móviles1

Primer Escenario. Presentado en la Figura 4, consiste en la búsqueda del camino más corto entre la posición actual del robot (coordenada [1.5, 18.5]) y la maleza más cercana (coordenada [25.5, 13.5]) en un cultivo de 16 hileras, espaciadas a 2 m. El objetivo es alcanzado y la trayectoria de 30 m es generada en 162 ms (Procesador Intel ® Core 2 duo de 1.6 GHz).

Segundo Escenario. Mostrado en la Figura 5, presenta un cultivo de 11 hileras, espaciadas a 3 m y contiene 14 obstáculos (cuadrados de color azul). El robot parte de las coordenadas [2.5, 12.5] y debe alcanzar la maleza de las coordenadas [42.5, 4.5]. En este caso la trayectoria de 84.4 m es generada exitosamente en 238 ms.

Podemos decir que, la generación de trayectorias resulta robusta y eficiente en términos de tiempo de computo. Además, para la evasión local de obstáculos resulta una alternativa fiable ya que de haber espacio para que el robot pase, el

Page 14: Los Robots Móviles1

algoritmo A*, encontrara la ruta de menor costo. Pero sin embargo, esta ruta tiende a ser muy rectilínea, es decir con aristas pronunciadas, por lo que se hace necesario reducir la velocidad del robot a la mitad (0.1 m s -1) para que el controlador pueda seguir la trayectoria de forma ajustada y evitar así las colisiones en espacios reducidos.

Por otra parte la evasión de obstáculos resulta exitosa, siempre que la altura del objeto sea menor que la altura a la que se encuentra el sensor Kinect. Esto, debido a que si no ve su punto de destino (punto intermedio de la trayectoria global P k+1), el robot necesita generar una nueva trayectoria al siguiente punto intermedio P k+2, lo que no siempre resulta ser la trayectoria de menor costo para evadir un obstáculo.

En cuanto al controlador, este resulta adecuado, ya que considera el modelo cinemático del robot, pero dicha cinemática cambia si es que se le añade peso adicional, como por ejemplo un pequeño estanque con herbicida.

El mayor aporte de este trabajo, creemos estriba en la integración de diversas técnicas de planificación, navegación, seguimiento de trayectorias, optimización y evasión de obstáculos mediante visión 3D. Técnicas que permiten asegurar la navegación segura y efectiva, en entornos agrícolas. Combinando técnicas clásicas como A*, con nuevas herramientas de visión 3D, como la que nos ofrece Kinect.

Tecnologías de construcción y conexión sensomotora

En el apartado anterior se ha realizado un desglose de los diferentes tipos de robots existentes atendiendo a su aplicación, pero más allá de este aspecto práctico hay otro hecho característico de los robots modernos que les confiere un mayor grado de libertad y utilidad. Esta característica es el movimiento en el espacio físico, es decir, la posibilidad de desplazarse por el entorno para observarlo e interactuar con él, y de esta forma emular con mayor fidelidad las funciones y capacidades de los seres vivos.

Tipos de locomoción:

Cintas de deslizamiento.- Sistema simple de movimiento, las cintas requieren mayor potencia y producen deslizamiento.

Page 15: Los Robots Móviles1

Diferencial.- El cambio de dirección se realiza modificando la velocidad relativa de las ruedas a izquierda y derecha.

Síncrona.- Motores separados para traslación y rotación que simplifican el control.

Triciclo.- Rueda para dirección sin deslizamiento, requiere guiado no holónomo.

Page 16: Los Robots Móviles1

Ackerman

Omnidireccionales.- Diseños complejos pero con mayor nivel de movimiento.

Con patas.- Alta movilidad requiere alta potencia.

Page 17: Los Robots Móviles1

Otros

Algunos conceptos previos:

Rueda motriz: La que proporciona fuerza de tracción al robot �

Rueda directriz: Ruedas de direccionamiento de orientación controlable.

Ruedas fijas: Sólo giran en torno a su eje sin tracción motriz. �

Ruedas locas o ruedas de castor. Ruedas orientables no controladas.

Centro instantáneo de rotación (CIR) o centro instantáneo de curvatura (CIC): El punto de intersección de todos los ejes de las ruedas.

Page 18: Los Robots Móviles1

Robots rodantes

Son aquellos que, como su nombre indica, se desplazan haciendo uso de ruedas. Podemos encontrar varias configuraciones para la posición y el número de ruedas. La primera de ellas sería la configuración de Ackerman, la cual se usa casi exclusivamente en la industria del automóvil. Es la configuración que llevan los coches: dos ruedas con tracción traseras, y dos ruedas de dirección delanteras. Esta configuración está diseñada para que la rueda delantera interior en un giro tenga un ángulo ligeramente más agudo que la exterior, y evitar así el derrape de las ruedas.

También es frecuente encontrar distribuciones de ruedas montadas en configuración diferencial (triciclo) se presenta como la más sencilla de todas. Consta de dos ruedas situadas diametralmente opuestas en un eje perpendicular a la dirección del robot más una rueda loca. Estas ruedas no llevan asociadas ningún motor, giran libremente según la velocidad del robot. Además, pueden orientarse según la dirección del movimiento, de forma análoga a como lo hacen las ruedas traseras de los carritos del supermercado

Page 19: Los Robots Móviles1

Existen algunos casos especiales en los que se usan otras configuraciones que dotan al robot de mejor adaptación a terrenos difíciles. En estos casos los algoritmos de control de movimiento adquieren una mayor complejidad, proporcional al número de elementos direccionales de forma independiente.

El último grupo de robots que aquí convendría nombrar es el de los robots que se desplazan mediante la utilización de cadenas. Para la realización de los giros es necesario que ambas cadenas giren en sentidos opuestos dependiendo de cual sea el sentido de giro final del robot, de modo parecido al que se utiliza en la configuración diferencial.

Page 20: Los Robots Móviles1

Robots andantes

Los robots andantes son aquellos que basan su movilidad en la simulación de los movimientos realizados por los seres humanos al andar. Estos robots están provistos de dos patas con varios grados de libertad, a través de las cuales son capaces de desplazarse manteniendo el equilibrio. No obstante, este tipo de robots son los más inestables que se encuentran en la actualidad, y los esfuerzos se aúnan en intentar conseguir técnicas de estabilidad y equilibro que eviten que el robot se desestabilice y vuelque en situaciones adversas, como al correr, subir una cuesta, sortear obstáculos, etc.

Sin embargo, podemos encontrar modelos avanzados de este tipo de robot que son capaces de caminar, gatear, bailar e incluso trotar a velocidades de 5 kilómetros/hora.

Page 21: Los Robots Móviles1

Robots reptadores

Las características que se buscan son: flexibilidad, versatilidad y adaptabilidad. Están formados por módulos en conexión de viraje-viraje (yaw-yaw) con ruedas pasivas, logrando una propulsión similar a la de las serpientes biológicas.

Page 22: Los Robots Móviles1

Robots nadadores

Estos robots son capaces de desenvolverse en el medio acuático, generalmente enfocados a tareas de exploración submarina en zonas donde no es posible llegar por ser de difícil acceso o estar a profundidades que el cuerpo humano no tolera.

Robots voladores

Este tipo de robots son capaces de desplazarse por el aire, del mismo modo que un avión o un helicóptero. Para ello, incorporan una serie de hélices que se encargan de generar la fuerza necesaria para elevar el robot y de realizar los giros pertinentes para seguir una determinada trayectoria.

Cinemática de robots móviles

Page 23: Los Robots Móviles1

La cinemática de un robot móvil describe la evolución de la posición/orientación del mismo en función de las variables de actuación.

Hipótesis:

El Robot se mueve sobre una superficie plana Los ejes de guiado son perpendiculares al suelo Rodadura pura(No hay deslizamiento) Robot como sólido rígido(no hay flexión) Las trayectorias se pueden aproximar como arcos de circunferencia entre

dos periodos de muestreo consecutivos.

Bibliografía

[1] Sistemas de Locomoción de robots móviles. Automatización y Robótica Industrial 5 Ing Industrial

[2] Coordinación y control de robots móviles basado en agentes. Adrián Cervera Andés

[3] Algoritmos para la clasificación y seguimiento de trayectorias de robots agrícolas. Christian Correa, Lorenzo Vásquez

[4] Planeación y seguimiento de trayectorias para un robot móvil. Aracely Yandún, Nelson Sotomayor