Open Source Robotics

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

Underactuated system

  • También llamado: underactuated robot, underactuated mechanical system
  • Categoría: Control › Feedback control
  • Etiquetas: dynamics, nonlinear-control, legged-robots, aerial-robots, control-theory

Un sistema mecánico cuyas entradas de control no pueden imponer aceleraciones arbitrarias en todos sus grados de libertad, como un cuadrirrotor, un carro-péndulo o un robot con patas.

Definición

Un sistema mecánico es subactuado (underactuated) cuando sus entradas de control no pueden producir una aceleración instantánea arbitraria en cada grado de libertad. Para un sistema escrito en la forma estándar de manipulador, M(q)q̈ + C(q, q̇)q̇ = τ_g(q) + Bu, esto ocurre cuando la matriz de actuación B tiene un rango menor que el número de coordenadas generalizadas q. Un brazo robótico totalmente actuado, con un motor en cada articulación, puede seguir cualquier trayectoria articular dentro de sus límites de par; un sistema subactuado no puede, y algunos movimientos solo son posibles aprovechando su dinámica natural.

Los ejemplos son comunes. El carro-péndulo (cart-pole) y el Acrobot, un péndulo de dos eslabones con motor solo en el codo, son los casos de manual. Un cuadrirrotor tiene seis grados de libertad pero cuatro entradas de rotor, por lo que debe inclinarse para acelerar lateralmente. Un robot con patas tiene una base flotante con seis coordenadas no actuadas: el cuerpo solo puede moverse mediante fuerzas de contacto en los pies, que están limitadas por la fricción y solo pueden empujar, y durante una fase de vuelo el centro de masa sigue una trayectoria balística hagan lo que hagan los motores de las articulaciones. Los coches, los barcos y cualquier cosa con articulaciones pasivas o elementos elásticos también son subactuados.

La subactuación no significa que el sistema sea incontrolable. El carro-péndulo y el cuadrirrotor son controlables, pero sus controladores tienen que trabajar con la dinámica en lugar de cancelarla. Las técnicas habituales incluyen la linealización por realimentación parcial, el moldeado de energía para el levantamiento (swing-up), la planitud diferencial para cuadrirrotores, la optimización de trayectorias con estabilización por realimentación y los modelos de orden reducido como el péndulo invertido lineal para caminar. En el diseño de hardware la misma idea se usa deliberadamente: una mano o pinza subactuada tiene menos motores que articulaciones y se apoya en muelles, tendones o mecanismos de barras para distribuir el movimiento.

Por qué importa

La mayoría de los robots que se desplazan por el mundo, incluidos los robots con patas, los drones y los robots de equilibrio, son subactuados. Reconocerlo cambia el enfoque de control: ya no se pueden seguir trayectorias arbitrarias, así que la planificación debe respetar la dinámica, y la estabilidad depende de contra qué puede empujar el robot y contra qué no.

Aplicaciones clave

  • Locomoción con patas y equilibrio
  • Control de vuelo de cuadrirrotores y de ala fija
  • Robots de equilibrio y sistemas de péndulo invertido
  • Levantamiento (swing-up) y maniobras acrobáticas
  • Pinzas y manos subactuadas

En la práctica

Un equipo que construye un robot autoequilibrado de dos ruedas tiene dos grados de libertad en el plano de cabeceo, la rotación de las ruedas y el cabeceo del cuerpo, pero solo una entrada, el par de las ruedas. Para avanzar, el controlador no puede simplemente hacer girar las ruedas: primero las hace rodar ligeramente hacia atrás para que el cuerpo se incline hacia delante, y luego acelera por debajo de él. Esta respuesta de fase no mínima sorprende a los ingenieros acostumbrados a sistemas totalmente actuados. El equipo linealiza la dinámica alrededor de la posición vertical, diseña un controlador LQR sobre el estado completo y limita las aceleraciones ordenadas para que el cuerpo permanezca dentro de la región de atracción del controlador y los motores dentro de sus límites de par.

Ideas erróneas comunes

  • Subactuado significa incontrolable — muchos sistemas subactuados son totalmente controlables; simplemente no pueden seguir trayectorias arbitrarias
  • La subactuación consiste solo en contar motores — lo que importa es si las entradas pueden acelerar cada grado de libertad; un robot con patas con un motor en cada articulación sigue siendo subactuado porque su base flotante no está actuada directamente
  • La subactuación es un defecto de diseño — a menudo trae máquinas más ligeras, simples y eficientes, y se elige deliberadamente en pinzas y caminantes pasivos

Quién debería saberlo

  • Ingenieros de control de robots con patas y humanoides
  • Ingenieros de control de vuelo de drones
  • Investigadores en control no lineal y óptimo
  • Estudiantes de robótica que aprenden dinámica de robots

Tecnologías relacionadas

  • Benchmarks Cart-Pole y Acrobot (Cart-Pole and Acrobot Benchmarks)
  • Regulador lineal cuadrático (Linear Quadratic Regulator, LQR)
  • Linealización por realimentación parcial (Partial Feedback Linearization)
  • Control por moldeado de energía (Energy Shaping Control)
  • Drake

Términos relacionados

  • Feedback Linearization
  • Differential Flatness
  • DOF
  • Linear Inverted Pendulum
  • Region of attraction
  • Underactuated Hand

Proyectos relacionados

  • Drake: MIT robotics toolbox for model-based dynamics, optimization, and control system design
  • DART: C++ physics engine for articulated rigid body dynamics and robotics simulation
  • Extreme Parkour with Legged Robots: RL system for legged robot parkour trained in under 20 hours
  • PACE Sim2Real: Systematic sim-to-real transfer via actuator dynamics identification
  • frax: JAX library for fast, differentiable robot kinematics, dynamics and inverse kinematics

Vídeos

  • Lecture 1 | MIT 6.832 (Underactuated Robotics), Spring 2020 | Why study dynamics?: underactuated
  • Lecture 1 | MIT 6.832 Underactuated Robotics, Spring 2009: MIT OpenCourseWare

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