Saltar al contenido principal
LibreTexts Español

10.3: ¿Cómo Encontrar Buenos Agarres?

  • Page ID
    85053
  • \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \) \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)\(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\) \(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\)\(\newcommand{\AA}{\unicode[.8,0]{x212B}}\)

    Encontrar un buen agarre que restrinja completamente a un objeto contra todas las fuerzas y pares externos posibles, es decir, un agarre que se encuentra en el “espacio de la llave de agarre” (la Sección 10.1.1 suele ser demasiado restrictiva. Por ejemplo, podría ser suficiente con encontrar un agarre que restrinja a un objeto simplemente contra la gravedad. Otras aplicaciones en cambio podrían requerir el agarre para restringir el movimiento de un objeto también nuevamente las fuerzas laterales que ocurren debido a la aceleración. En la práctica, estas consideraciones generalmente conducen a heurísticas simples específicas de la aplicación. Por ejemplo, en las tareas de recolección de un almacén (Correll, Bekris, Berenson, Brock, Causo, Hauser, Okada, Rodriguez, Romano & Wurman 2016), el problema puede restringirse a que el robot agarre solo objetos que son adecuados para ser recuperados con una simple ventosa. Encontrar un buen agarre se reduce entonces a encontrar una superficie plana cerca del centro de gravedad percibido del objeto. Al considerar las tareas domésticas, tales como el manejo y colocación de platos, el uso de artículos de plata para sacar comida, o sostener una jarra, a menudo nos interesa agarrar muy específicos que apoyen la manipulación pretendida (Sección 10.4) que sigue.

    Teóricamente hablando, las agallas como recoger un objeto o abrir una puerta girando su perilla son espacios de llave específicos para tareas. Entonces podemos decir que el agarre es “bueno”, cuando el espacio de la llave de tarea es un subconjunto del espacio de la llave de agarre, y fallará de otra manera. También podemos observar la relación de fuerzas realmente aplicadas al objeto y el mínimo necesario para realizar una llave deseada. Si esta relación es alta, por ejemplo, cuando el robot agarra un objeto lejos de su centro de gravedad o tiene que apretar fuertemente un objeto para evitar que se deslice, este agarre no es tan bueno como uno, donde la relación es baja y toda la fuerza que ejerce el robot en realidad va a entrar en la llave deseada. Por lo general, no es posible encontrar expresiones de forma estrecha para el espacio de la llave de agarre. En cambio, se puede muestrear el espacio de vectores de fuerza adecuados, por ejemplo, seleccionando un par de fuerzas que están en el límite de la base del cono, y calcular el casco convexo sobre las llaves resultantes.

    Encontrar buenas agarraderas para agarradores simples

    Encontrar buenos agarradores para agarradores simples, que tienen solo uno o como máximo dos grados de libertad, reduce el problema de encontrar geometrías en el objeto que sean adecuadas para colocar las mordazas de la garra, es decir, dos caras paralelas que son razonablemente planas y a una distancia que está por debajo de la apertura máxima de la garra apertura.

    En la práctica, un objeto podría ser percibido por un dispositivo de percepción 3D como una cámara estéreo o un escáner láser, lo que proporcionaría solo una perspectiva de un objeto. Una tubería de agarre típica que utiliza dicho dispositivo se muestra en la Figura??.

    Un algoritmo típico procede de la siguiente manera:

    1. Adquisición: Obtener una “nube de puntos” o “imagen de profundidad” de los objetos de interés (Figura 10.3.1, b).
    2. Preprocesamiento: Retire el plano de la mesa u otros puntos que estén demasiado cerca o demasiado lejos del sensor (Figura 10.3.1, c).
    3. Segmentación: Agrupar puntos que están lo suficientemente cerca, por ejemplo, para identificar objetos individuales (Figura 10.3.1, d).
    4. Filtrado: Filtre clústeres por tamaño, geometría u otras entidades, para seleccionar objetos de interés hacia abajo (Figura 10.3.1, e).
    5. Planeación: Centro de masa de cómputos y ejes principales de clústeres relevantes (Figura 10.3.1, f).
    6. Comprobación de colisiones: Generar posibles agallas y verificar colisiones con nubes de puntos (Figura 10.3.1, g).
    7. Ejecución: Probar físicamente un agarre monitoreando las distancias de la mandíbula, así como las fuerzas y pares en la muñeca (Figura 10.3.1, h).

    Algunos de estos pasos pueden no ser necesarios para todos los captadores, y algunos de ellos pueden tener complejidad arbitraria. Por ejemplo, el preprocesamiento se usa a menudo para eliminar cuanititas conocidas tales como una superficie de mesa, de los datos, pero podría ser no trivial cuando se eliminan los bordes de un contenedor, p.

    La segmentación es el paso más crítico y requiere algunos conocimientos previos sobre los objetos a captar, como su tamaño o la geometría de las características sobre los mismos. En la Figura 10.6, los puntos de agrupamiento basados en su distancia son suficientes, por ejemplo, usando el algoritmo DBSCAN (Ester, Kriegel, Sander, Xu et al. 1996), pero requiere una suposición sobre el tamaño del objeto para seleccionar un umbral adecuado. Otros algoritmos de segmentación podrían usar normales de superficie o una combinación de nubes de puntos y datos de imagen como color o patrones.

    Filtrar los clústeres resultantes para identificar objetos de interés puede ser tan simple como rechazar aquellos que son demasiado pequeños (como se muestra en la Figura 10.6, e), pero también podría implicar hacer coincidir los puntos con un modelo 3D de un objeto deseado o involucrar datos de imagen.

    Un enfoque simple para planificar posibles agallas es calcular el centro de masa así como los ejes principales de un objeto mediante el análisis de componentes principales (Apéndice B.5). Otros enfoques podrían requerir hacer coincidir los puntos existentes con un modelo 3D del objeto para identificar puntos de agarre específicos (como el mango de una taza) o volver a confiar en las características de la imagen para hacerlo.

    Después de planear todos, o algunos, posibles agreses, es necesario verificar la viabilidad de las agallas. Si bien una colisión con un punto en la nube de puntos podría descartar una comprensión, la búsqueda local a veces se usa para encontrar una variante libre de colisiones, por ejemplo moviendo la garra hacia arriba y hacia abajo, así como a lo largo de los ejes principales. En otras aplicaciones, por ejemplo la recolección de contenedores, algunas colisiones podrían ignorarse con la expectativa de que la garra empujará a otros objetos fuera de su camino.

    Aunque una comprensión pueda parecer robusta en una representación de nube de puntos, puede que no sea efectiva al ejecutarla físicamente. Las posibles fallas son colisiones con objetos, fricción insuficiente con el objeto o un objeto que se mueve antes de que la garra esté completamente cerrada. Por esta razón, es importante cerrar ya la garra tanto como sea posible antes de acercarse al objeto, aumentando los requisitos para una percepción precisa.

    Con la capacidad de entrenar redes neuronales para aproximar funciones complejas, también es posible reemplazar partes, o todos, los pasos algorítmicos mostrados en la Figura 10.6 utilizando una red neuronal convolucional entrenada por aprendizaje profundo. Si bien los datos intensivos, este enfoque puede combinar sin problemas datos de imagen y profundidad y adaptarse a datos específicos de la aplicación mejor que un algoritmo codificado a mano.

    Encontrar buenas agarraderas para manos con múltiples dedos

    La simple tubería de agarre descrita anteriormente es computacionalmente costosa ya que generalmente existen muchos posibles candidatos de agarre, y cada uno de ellos necesita ser revisado para detectar colisiones. Este problema explota al considerar agarraderas con dedos articulados. Esto se puede superar considerando solo un conjunto predefinido de agarra, como pellizcos de dos y tres dedos para objetos pequeños y agarra que abarca a mano completa para objetos más grandes, p.

    Un método adecuado para buscar el espacio completo de posibles agallas con una mano articulada es usar muestreo aleatorio, es decir, llevar el efector final a posiciones aleatorias, cerrar sus dedos alrededor del objeto y ver qué sucede al generar llaves que cumplan con los requisitos de la tarea. Para “ver qué pasa”, se requiere comprobación de colisiones y simulación dinámica. La simulación dinámica aplica mecánica newtoniana a un objeto (es decir, las fuerzas conducen a la aceleración de un cuerpo) y mueve el objeto en pasos de tiempo muy pequeños. Si bien esto se puede hacer usando los componentes conectados identificados solo en la nube de puntos y asumiendo parámetros razonables para la fricción y los puntos de contacto, los datos de la nube de puntos también se pueden aumentar mediante modelos de objetos para simular si un agarre tiene una alta probabilidad de tener éxito.


    This page titled 10.3: ¿Cómo Encontrar Buenos Agarres? is shared under a CC BY-NC 4.0 license and was authored, remixed, and/or curated by Nikolaus Correll via source content that was edited to the style and standards of the LibreTexts platform; a detailed edit history is available upon request.