Open Source Robotics

Uma coleção selecionada de projetos, ferramentas e software de robótica de código aberto de alta qualidade.

Feedback Linearization

  • Também chamado: exact linearization, nonlinear dynamic inversion, NDI
  • Categoria: Control › Feedback control
  • Tags: nonlinear-control, model-based-control, manipulator-control, dynamics, trajectory-tracking

Uma técnica de controle não linear que usa um modelo do sistema para cancelar suas não linearidades por realimentação de estado, de modo que o projeto padrão de controle linear possa ser aplicado ao resultado.

Definição

Linearização por realimentação (feedback linearization) é um método para controlar sistemas não lineares transformando-os algebricamente em sistemas lineares. O controlador usa um modelo da dinâmica para calcular uma entrada que cancela os termos não lineares e introduz uma nova entrada virtual, por meio da qual o sistema em malha fechada se comporta como um sistema linear simples, muitas vezes uma cadeia de integradores. Um controlador linear convencional, como uma lei proporcional-derivativa ou alocação de polos, é então projetado para esse sistema linear. Diferentemente da linearização em torno de um ponto de operação, o cancelamento é exato onde quer que o modelo seja válido.

Na robótica, o caso mais conhecido é o controle por torque computado (computed torque control) para braços robóticos. A dinâmica de corpo rígido de um braço é M(q)q̈ + C(q, q̇)q̇ + g(q) = τ. Escolher o torque τ = M(q)v + C(q, q̇)q̇ + g(q) cancela os termos de inércia, de Coriolis e de gravidade e deixa q̈ = v para cada junta. A nova entrada v pode ser uma lei PD sobre os erros de posição e velocidade das juntas mais uma aceleração desejada, resultando em uma dinâmica de erro linear e desacoplada, com ganhos escolhidos diretamente para a resposta desejada. O controle no espaço operacional aplica a mesma ideia em coordenadas do efetuador final.

A teoria distingue a linearização entrada-estado, em que todo o estado é tornado linear, da linearização entrada-saída, em que apenas a relação entre a entrada e uma saída escolhida é linearizada. No caso entrada-saída, a saída é derivada até que a entrada apareça, e o número de derivações é o grau relativo. Se o grau relativo for menor que a ordem do sistema, parte da dinâmica, a dinâmica interna ou dinâmica zero, fica oculta da saída e precisa ser estável para que a abordagem funcione; sistemas em que ela é instável são chamados de fase não mínima.

A principal fraqueza é a dependência do modelo. O cancelamento só é exato se o modelo for exato; erros de massa, atrito ou comportamento dos atuadores deixam não linearidades residuais que a malha externa linear precisa absorver. Controladores práticos acrescentam termos robustos ou adaptativos, ação integral ou modelos aprendidos da dinâmica residual. A saturação da entrada também pode quebrar o cancelamento quando o torque necessário excede o que os atuadores conseguem fornecer.

Por que importa

A linearização por realimentação conecta a dinâmica não linear dos robôs à ampla caixa de ferramentas do controle linear, e é por isso que o controle por torque computado continua sendo um método padrão para braços robóticos e que muitos controladores de robôs com pernas e aéreos usam a mesma ideia. Entender suas hipóteses explica tanto por que controladores baseados em modelo conseguem rastrear com precisão quanto por que eles se degradam quando o modelo está errado.

Principais aplicações

  • Controle por torque computado — rastreamento de trajetórias para braços robóticos
  • Controle no espaço operacional — controlar o movimento e a força do efetuador final em coordenadas da tarefa
  • Controle de quadricópteros — cancelar a dinâmica não linear de atitude e empuxo para rastreamento
  • Caminhada bípede — linearizar saídas selecionadas em controladores de dinâmica zero híbrida
  • Seguimento de caminho em robôs móveis — linearizar modelos cinemáticos de veículos com rodas

Na prática

Uma equipe que controla um braço robótico normalmente constrói seu modelo dinâmico a partir do URDF com uma biblioteca de dinâmica de corpo rígido como Pinocchio ou RBDL, identifica parâmetros inerciais e de atrito a partir de movimentos de teste e implementa o controle por torque computado em um laço de tempo real no nível do torque nas juntas. Em seguida, ajusta os ganhos PD externos de cada junta para obter a rigidez e o amortecimento desejados e compara os torques comandados e medidos para descobrir onde o modelo é impreciso. Quando o rastreamento se degrada em alta velocidade ou sob carga, a equipe refina o modelo, adiciona compensação de atrito ou adiciona um termo residual aprendido, em vez de simplesmente aumentar os ganhos de realimentação.

Equívocos comuns

  • Linearização por realimentação é o mesmo que linearizar em torno de um ponto de operação — ela cancela as não linearidades de forma exata em uma região usando o modelo completo, em vez de aproximar perto de um ponto
  • O resultado é robusto porque a malha fechada é linear — depende de um modelo preciso, e erros de modelo deixam termos não lineares não cancelados
  • Todo sistema não linear pode ser linearizado por realimentação — condições sobre a estrutura do sistema precisam ser satisfeitas, e sistemas de fase não mínima não podem ser tratados diretamente
  • Ganhos de realimentação mais altos corrigem erros de modelo — eles podem mascarar erros, mas amplificam o ruído e excitam flexibilidades não modeladas; melhorar o modelo costuma ser mais eficaz

Quem deve saber

  • Engenheiros de controle que trabalham com braços robóticos e robôs com pernas
  • Estudantes de robótica que aprendem controle não linear e baseado em modelo
  • Desenvolvedores de controladores de voo para drones
  • Pesquisadores que combinam modelos aprendidos com controle baseado em modelo

Tecnologias relacionadas

  • Controle por torque computado (Computed Torque Control)
  • Controle no espaço operacional (Operational Space Control)
  • Pinocchio
  • Planicidade diferencial (Differential Flatness)
  • Controle adaptativo (Adaptive Control)
  • Controle por modos deslizantes (Sliding Mode Control)

Termos relacionados

  • Differential Flatness
  • PID Controller
  • Torque Control
  • Model Predictive Control

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
  • frax: JAX library for fast, differentiable robot kinematics, dynamics and inverse kinematics

Vídeos

  • Easy Introduction to Feedback Linearization - Control Engineering Tutorials: Aleksandar Haber PhD

Este site requer JavaScript. Por favor, habilite o JavaScript para explorar nossos projetos de robótica.