Underactuated system
- Também chamado: underactuated robot, underactuated mechanical system
- Categoria: Control › Feedback control
- Tags: dynamics, nonlinear-control, legged-robots, aerial-robots, control-theory
Um sistema mecânico cujas entradas de controle não conseguem comandar acelerações arbitrárias em todos os seus graus de liberdade, como um quadrirrotor, um carro-pêndulo ou um robô com pernas.
Definição
Um sistema mecânico é subatuado (underactuated) quando suas entradas de controle não conseguem produzir uma aceleração instantânea arbitrária em cada grau de liberdade. Para um sistema escrito na forma padrão de manipulador, M(q)q̈ + C(q, q̇)q̇ = τ_g(q) + Bu, isso acontece quando a matriz de atuação B tem posto menor que o número de coordenadas generalizadas q. Um braço robótico totalmente atuado, com um motor em cada junta, pode seguir qualquer trajetória de juntas dentro de seus limites de torque; um sistema subatuado não pode, e alguns movimentos só são possíveis explorando sua dinâmica natural.
Os exemplos são comuns. O carro-pêndulo (cart-pole) e o Acrobot, um pêndulo de dois elos com motor apenas no cotovelo, são os casos de livro-texto. Um quadrirrotor tem seis graus de liberdade, mas quatro entradas de rotor, por isso precisa se inclinar para acelerar lateralmente. Um robô com pernas tem uma base flutuante com seis coordenadas não atuadas: o corpo só pode ser movido por forças de contato nos pés, que são limitadas pelo atrito e só podem empurrar, e durante uma fase de voo o centro de massa segue uma trajetória balística, não importa o que os motores das juntas façam. Carros, barcos e qualquer coisa com juntas passivas ou elementos elásticos também são subatuados.
A subatuação não significa que o sistema seja incontrolável. O carro-pêndulo e o quadrirrotor são controláveis, mas seus controladores precisam trabalhar com a dinâmica em vez de cancelá-la. As técnicas comuns incluem a linearização por realimentação parcial, a modelagem de energia para o levantamento (swing-up), a planicidade diferencial para quadrirrotores, a otimização de trajetória com estabilização por realimentação e modelos de ordem reduzida como o pêndulo invertido linear para a caminhada. No projeto de hardware a mesma ideia é usada deliberadamente: uma mão ou garra subatuada tem menos motores do que juntas e depende de molas, tendões ou mecanismos articulados para distribuir o movimento.
Por que importa
A maioria dos robôs que se deslocam pelo mundo, incluindo robôs com pernas, drones e robôs de equilíbrio, é subatuada. Reconhecer isso muda a abordagem de controle: trajetórias arbitrárias já não podem ser rastreadas, então o planejamento precisa respeitar a dinâmica, e a estabilidade depende daquilo contra o que o robô consegue ou não empurrar.
Principais aplicações
- Locomoção com pernas e equilíbrio
- Controle de voo de quadrirrotores e de asa fixa
- Robôs de equilíbrio e sistemas de pêndulo invertido
- Levantamento (swing-up) e manobras acrobáticas
- Garras e mãos subatuadas
Na prática
Uma equipe que constrói um robô autoequilibrado de duas rodas tem dois graus de liberdade no plano de arfagem, a rotação das rodas e a arfagem do corpo, mas apenas uma entrada, o torque das rodas. Para andar para frente, o controlador não pode simplesmente girar as rodas: primeiro ele as rola levemente para trás para que o corpo se incline para frente e depois acelera por baixo dele. Essa resposta de fase não mínima surpreende engenheiros acostumados a sistemas totalmente atuados. A equipe lineariza a dinâmica em torno da posição vertical, projeta um controlador LQR sobre o estado completo e limita as acelerações comandadas para que o corpo permaneça dentro da região de atração do controlador e os motores dentro de seus limites de torque.
Equívocos comuns
- Subatuado significa incontrolável — muitos sistemas subatuados são totalmente controláveis; eles apenas não conseguem seguir trajetórias arbitrárias
- A subatuação é só uma questão de contar motores — o que importa é se as entradas conseguem acelerar cada grau de liberdade; um robô com pernas com um motor em cada junta continua subatuado porque sua base flutuante não é atuada diretamente
- A subatuação é uma falha de projeto — ela costuma vir com máquinas mais leves, simples e eficientes, e é escolhida deliberadamente em garras e caminhantes passivos
Quem deve saber
- Engenheiros de controle de robôs com pernas e humanoides
- Engenheiros de controle de voo de drones
- Pesquisadores de controle não linear e ótimo
- Estudantes de robótica que aprendem dinâmica de robôs
Tecnologias relacionadas
- Benchmarks Cart-Pole e Acrobot (Cart-Pole and Acrobot Benchmarks)
- Regulador linear quadrático (Linear Quadratic Regulator, LQR)
- Linearização por realimentação parcial (Partial Feedback Linearization)
- Controle por modelagem de energia (Energy Shaping Control)
- Drake
Termos relacionados
- Feedback Linearization
- Differential Flatness
- DOF
- Linear Inverted Pendulum
- Region of attraction
- Underactuated Hand
Projetos 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