Open Source Robotics

Una colección curada de proyectos, herramientas y software de robótica de código abierto de alta calidad.

Contact mode

  • También llamado: contact state
  • Categoría: Planning & manipulation › Manipulation
  • Etiquetas: contact, manipulation, hybrid-dynamics, friction, planning

Una etiqueta discreta que indica qué contactos de un sistema robot-objeto están activos y si cada uno está adherido o deslizando; cada etiqueta corresponde a un conjunto distinto de dinámicas suaves.

Definición

En un sistema con contacto con fricción, cada contacto potencial puede estar en uno de varios estados: separado, sin fuerza; adherido, en contacto sin movimiento tangencial relativo; o deslizante, en contacto y moviéndose tangencialmente, con la fuerza de fricción en el borde del cono de fricción y opuesta al movimiento. Un modo de contacto (contact mode) asigna uno de estos estados a cada contacto del sistema. Dentro de un modo fijo las ecuaciones de movimiento son suaves, porque las restricciones activas y la forma de las fuerzas de fricción son conocidas. En las fronteras entre modos la dinámica cambia bruscamente. Por eso la dinámica de contacto es híbrida: modos suaves separados por superficies de guarda, como que la holgura de un contacto llegue a cero o que la fuerza tangencial de un contacto adherido alcance el límite de fricción.

El número de modos crece exponencialmente con el número de contactos. Con n contactos y tres estados cada uno hay hasta 3ⁿ combinaciones, y más en tres dimensiones, donde el deslizamiento puede producirse en distintas direcciones, aunque muchas son infactibles para una geometría dada. Esta estructura combinatoria es el principal obstáculo para planificar la manipulación y la locomoción ricas en contactos. Los métodos difieren en cómo la tratan: enumerando los modos factibles y planificando una secuencia a través de ellos; codificando las elecciones de modo con variables enteras en programas enteros mixtos; mediante la optimización de trayectorias con contacto implícito, que representa el contacto con restricciones de complementariedad para que el optimizador elija los modos de forma implícita; y mediante el suavizado, que sustituye la dinámica de contacto no suave por una aproximación suave para que los métodos basados en gradiente puedan ver más allá del modo actual, como en el artículo de planificación global de nuestro sitio.

En la manipulación cuasiestática y cuasidinámica, donde los efectos inerciales son pequeños comparados con las fuerzas de contacto y de fricción, la enumeración de modos suele ser abordable para unos pocos contactos y da un plan interpretable, por ejemplo: empujar el objeto mientras el dedo está adherido, dejar que el dedo se deslice a una nueva posición y luego hacer pivotar el objeto sobre una esquina. Las secuencias de modos también son centrales en la locomoción con patas, donde la marcha define qué pies están en contacto a lo largo del tiempo, aunque allí la secuencia suele fijarse de antemano mediante un calendario de marcha en lugar de buscarse.

Por qué importa

Elegir qué contactos establecer y romper, y si se adhieren o deslizan, es la decisión central en la manipulación y la locomoción. Los modos de contacto explican por qué estos problemas son difíciles para los optimizadores suaves y cómo los planificadores modernos sortean esa dificultad.

Aplicaciones clave

  • Planificación de manipulación no prensil como empujar, pivotar y volcar
  • Manipulación en la mano con contactos deslizantes y de rodadura
  • Optimización de trayectorias con contacto implícito para robots con patas
  • Planificación de marchas y de secuencias de contacto
  • Estimación del estado de contacto a partir de sensado de fuerza y táctil

En la práctica

Un equipo planifica que un robot empuje una caja por una mesa y luego la gire hasta ponerla de pie contra una pared. Modela el contacto dedo-caja, el contacto caja-mesa como puntos de esquina y el contacto caja-pared. Para la fase de empuje elige un modo con el dedo adherido a la caja y la caja deslizando sobre la mesa; para el pivote elige la caja adherida por su esquina contra la pared, deslizando sobre la mesa, con el dedo deslizando sobre la cara de la caja. Dentro de cada modo resuelve los movimientos del dedo que mantienen todas las fuerzas dentro de sus conos de fricción. Durante la ejecución vigila las lecturas de fuerza y la pose seguida de la caja para detectar cambios de modo no planificados, como un deslizamiento del dedo, y replanifica cuando se produce uno.

Ideas erróneas comunes

  • Un modo de contacto solo dice qué contactos se tocan — también dice si cada uno está adherido o desliza, lo que cambia la dinámica tanto como establecer o romper un contacto
  • Los planificadores deben enumerar todos los modos de contacto — la optimización con contacto implícito y el suavizado evitan la enumeración explícita, a costa de garantías más débiles y mínimos locales
  • Los modos de contacto son un artefacto del modelado — reflejan cambios físicos reales; una pinza que sufre un deslizamiento ha cambiado de modo, y un controlador que lo ignora puede fallar

Quién debería saberlo

  • Investigadores en planificación de manipulación
  • Ingenieros de control de locomoción con patas
  • Desarrolladores de simulación física
  • Ingenieros de sensado táctil y de fuerza

Tecnologías relacionadas

  • Problemas de complementariedad lineal (Linear Complementarity Problems)
  • Optimización de trayectorias con contacto implícito (Contact-Implicit Trajectory Optimization)
  • Modelos de contacto cuasiestáticos (Quasi-Static Contact Models)
  • Drake
  • MuJoCo

Términos relacionados

  • Hybrid system
  • Friction Cone
  • Mixed-Integer Programming
  • Wrench
  • Dexterous Manipulation
  • Extrinsic dexterity

Proyectos relacionados

  • LeRobot: HuggingFace ML library for real-world robotics in PyTorch
  • Isaac Lab: NVIDIA robot learning framework: one task API across Newton, PhysX and Isaac Sim
  • NVIDIA Isaac GR00T: NVIDIA open foundation model for humanoid robot reasoning and skills
  • OpenVLA: 7B-parameter Vision-Language-Action model for robotic manipulation
  • Drake: MIT robotics toolbox for model-based dynamics, optimization, and control system design
  • OpenArm: 7DOF humanoid arm for physical AI research in contact-rich environments

Este sitio web requiere JavaScript. Por favor, habilite JavaScript para explorar nuestros proyectos de robótica.