Manipulação
Visão geral
Em robótica, manipulação (manipulation) é o conjunto de problemas em que um robô usa um efetuador final (end-effector) (garra (gripper), mão, ventosa, ferramenta) para interagir fisicamente com objetos a fim de alcançar objetivos como pegar, posicionar, montar, abrir, dobrar, inserir, girar ou deformar itens. A manipulação é central para a automação de armazéns, manufatura, robôs domésticos, automação de laboratórios e muitas formas de robótica assistiva.
O que torna a manipulação especialmente desafiadora é o contato (contact). Assim que um robô toca um objeto, o sistema passa a ser:
- Não linear e híbrido (nonlinear and hybrid) (os modos contato/sem contato alternam)
- Altamente sensível à geometria, ao atrito e à complacência (compliance)
- Parcialmente observável (partially observable) (forças de contato e escorregamento não são totalmente vistos por câmeras)
- Difícil de simular com precisão, o que complica o aprendizado (learning) e o planejamento (planning)
Este artigo foca em três pilares:
- Preensão (grasping) (aquisição estável e sustentação de objetos)
- Interação rica em contato (contact-rich interaction) (tarefas em que contato sustentado e regulação de força importam)
- Desafios de dados e simulação (data and simulation challenges) (por que manipulação é difícil de aprender e implantar)
A manipulação fica na interseção entre percepção (perception), planejamento e controle (control); veja Percepção → Planejamento → Controle para a pilha mais ampla.
Tipos de tarefas de manipulação
Pegar-e-posicionar (majoritariamente cinemático, contato curto)
A tarefa clássica: detectar um objeto, escolher uma pose de preensão, fechar a garra, erguer e posicionar. Existe contato, mas às vezes ele pode ser tratado como um evento discreto (“a preensão teve sucesso ou falhou”).
Exemplos:
- Separação de itens em bins de armazém
- Classificação de objetos em uma esteira
- Carregamento de peças em bandejas
Manipulação rica em contato (contato contínuo, força importa)
Aqui, o robô deve manter e regular o contato enquanto atinge um objetivo geométrico.
Exemplos:
- Inserção pino-no-furo
- Rosquear uma tampa em uma garrafa
- Deslizar um objeto sobre uma mesa (empurrar)
- Abrir portas/gavetas
- Alinhar peças na montagem
- Dobrar tecido (manipulação deformável)
Essas tarefas exigem controle de força (force control), complacência (compliance) e, muitas vezes, feedback tátil (tactile feedback).
Uso de ferramentas e manipulação não preênsil
- Uso de ferramentas: segurar uma ferramenta e usá-la para agir sobre outro objeto (virar com espátula, limpar, mexer).
- Não preênsil: mover objetos sem agarrá-los (empurrar, rolar, bater).
Estratégias não preênseis podem reduzir a complexidade da preensão, mas exigem raciocínio preciso sobre contato.
Fundamentos teóricos
Modelagem de contato: por que “tocar” é difícil
Quando um objeto rígido entra em contato com outro corpo rígido, a dinâmica do sistema é governada por:
- Dinâmica de corpos rígidos Newton-Euler (Newton-Euler rigid body dynamics)
- Restrições unilaterais (unilateral constraints) (objetos podem empurrar, mas não “puxar” através do contato)
- Leis de atrito (friction laws) (frequentemente atrito de Coulomb (Coulomb friction) com comportamento de aderência-deslizamento (stick-slip))
Uma forma matemática comum introduz restrições de complementaridade (complementarity constraints):
- Não penetração: ( \phi(q) \ge 0 ) (distância com sinal)
- Força normal: ( \lambda_n \ge 0 )
- Complementaridade: ( \phi(q)\lambda_n = 0 )
Isso significa que ou:
- existe um vão ((\phi>0)) e não há força de contato ((\lambda_n=0)), ou
- há contato ((\phi=0)) e forças podem ser aplicadas.
Com atrito, as coisas ficam ainda mais complexas devido a cones de atrito (friction cones) e transições de adesão estática/deslizamento (stiction/slip transitions). O resultado é uma dinâmica híbrida, às vezes não suave (nonsmooth) — desafiadora tanto para planejadores clássicos quanto para aprendizado baseado em gradientes.
Na prática, simuladores aproximam contato com:
- forças de penalidade (“contato macio” com molas/amortecedores),
- integração temporal baseada em impulsos,
- resolvedores de complementaridade (complementarity solvers) (formulações LCP/QP), cada um com compromissos entre estabilidade e realismo.
Teoria de preensão: fechamento por força e qualidade de preensão
Uma preensão é frequentemente analisada pela capacidade de resistir a perturbações externas.
Conceitos-chave:
- Matriz de preensão (grasp matrix) (G): mapeia forças de contato para esforços generalizados (wrenches) no objeto (forças/torques).
- Cone de atrito: limita direção/magnitude de forças tangenciais em um contato.
- Fechamento por força (force closure): a preensão pode gerar esforços generalizados em qualquer direção (dentro de limites), implicando sustentação robusta sob perturbações.
- Fechamento por forma (form closure): restrição puramente geométrica impede movimento (raro na prática sem atrito).
O planejamento de preensão muitas vezes tenta maximizar uma métrica de qualidade de preensão, como:
- distância da origem até o fecho convexo dos esforços generalizados alcançáveis,
- magnitude mínima de esforço generalizado resistido,
- margens de robustez sob incerteza.
Essas métricas são poderosas — mas dependem de localizações de contato, normais, coeficientes de atrito e geometria do objeto, que são incertos em sistemas reais.
Controle na manipulação: posição vs força vs complacência
Braços industriais clássicos se destacam em controle de posição (position control) preciso em espaço livre. Em manipulação rica em contato, controle de posição puro é frágil: pequenos erros de pose causam grandes forças de contato.
Abordagens comuns de controle:
- Controle de força: regula a força de contato para um alvo (requer sensoriamento de força confiável).
- Controle de impedância (impedance control): especifica um comportamento virtual de mola-amortecedor entre o efetuador final e a pose-alvo (complacência).
- Controle de admitância (admittance control): converte forças medidas em comandos de movimento (frequentemente usado quando o robô é rígido ou o sensoriamento de força é externo).
Esses controladores são centrais para manipulação robusta e se conectam diretamente a Controle.
Uma lei simplificada de controle de impedância (conceitual) é:
F_cmd = K * (x_target - x) + D * (v_target - v)
onde (x, v) são a pose/velocidade do efetuador final, e (K, D) ajustam complacência e amortecimento.
A impedância é popular porque tolera incerteza: se o ambiente não está exatamente onde você pensou, o robô “cede” em vez de emperrar.
Pipelines práticos de preensão
Planejamento de preensão baseado em geometria (analítico / amostragem)
Um pipeline comum para uma garra de mandíbulas paralelas (parallel-jaw gripper):
- Adquirir imagem de profundidade (depth image) / nuvem de pontos (point cloud).
- Amostrar candidatos de preensão (poses da garra) ao redor das superfícies do objeto.
- Avaliar candidatos usando heurísticas:
- contatos antipodais (antipodal contacts) (normais opostas),
- folga contra colisões,
- restrições de atrito estimadas.
- Selecionar o melhor candidato e planejar a trajetória de aproximação.
- Fechar a garra, erguer, verificar sucesso (por exemplo, via abertura da garra ou força).
Isso funciona bem para garras conhecidas e objetos rígidos, mas tem dificuldade com:
- itens transparentes/reflexivos (profundidade ruim),
- deformáveis,
- desordem/oclusão,
- propriedades de atrito/material desconhecidas.
Preensão baseada em aprendizado
Sistemas modernos frequentemente aprendem uma função de “pontuação” de preensão a partir de dados.
Formulações comuns:
- Detecção de pose de preensão (grasp pose detection): prever um conjunto de poses de preensão e confiança a partir de RGB-D.
- Função Q (Q-function) para preensões: tratar uma preensão como uma ação e prever a probabilidade de sucesso.
- Afordâncias densas (dense affordances): produzir, por pixel, pontuações de sucesso de preensão e orientações.
O aprendizado melhora a robustez em ambientes desordenados e com percepção ruidosa, mas introduz novos desafios:
- coletar resultados de preensão suficientemente variados,
- generalizar para novos objetos,
- evitar viés de conjunto de dados (dataset bias) em direção a preensões fáceis.
Um esboço simplificado de treinamento para predição de sucesso de preensão:
# Pseudocode
for (obs, grasp_pose, success) in dataset:
p = model(obs, grasp_pose) # predicted success probability
loss = BCE(p, success) # binary cross entropy
loss.backward()
optimizer.step()
Em sistemas reais, o “conjunto de dados (dataset)” pode ser coletado autonomamente por tentativa-e-erro (preensão auto-supervisionada (self-supervised grasping)) ou via teleoperação (teleoperation).
Mãos multi-dedos vs garras simples
- Garras de mandíbulas paralelas são mais simples, confiáveis e mais fáceis de planejar; elas dominam a indústria.
- Mãos dexterosas (dexterous hands) podem realizar manipulação na mão (in-hand manipulation) (repreensão, rotação de objetos), mas são mais difíceis de modelar e controlar devido a muitos graus de liberdade (degrees of freedom) e contatos complexos.
O aprendizado avançou na destreza, mas as demandas de dados e as lacunas simulação-para-real (sim-to-real gaps) permanecem significativas.
Manipulação rica em contato: estratégias que funcionam na prática
Por que tarefas ricas em contato falham
Falhas frequentemente vêm de:
- pequenos erros de pose que causam travamento (jamming),
- temporização de contato incorreta,
- complacência não modelada,
- incerteza de atrito e adesão estática,
- estimação de estado (state estimation) ruim (onde exatamente está a peça durante a inserção?).
Isso não são apenas “bugs de controle” — são questões fundamentais de observabilidade parcial e dinâmica não suave.
Feedback tátil e de força
Somente visão muitas vezes não consegue detectar:
- escorregamento incipiente,
- mudanças na localização de contato,
- pequenos desalinhamentos na inserção,
- se duas superfícies estão plenamente assentadas.
Adicionar sensores ajuda:
- sensores de força/torque no punho (wrist force/torque sensors): detectam forças e torques de contato durante inserção/polimento.
- matrizes táteis (tactile arrays) (peles nos dedos): detectam distribuição de pressão e escorregamento.
- correntes dos motores da garra: proxy barato para força em algumas garras.
Um exemplo prático: inserção de pino
- Usar visão para obter uma pose aproximada do furo.
- Aproximar com controle de impedância.
- Quando a força de contato exceder um limiar, alternar para uma busca em espiral (spiral search) ou modo de complacência.
- Usar força-torque para detectar alinhamento e assentamento bem-sucedido.
Comportamentos reativos e controle híbrido (hybrid control)
Manipulação rica em contato frequentemente se beneficia de máquinas de estados (state machines) explícitas:
- movimento em espaço livre (controle de posição)
- detecção de contato (limiar de força)
- inserção com complacência (impedância)
- confirmação (assinatura de força / profundidade / torque)
Essa estrutura “híbrida” é comum em automação industrial porque é interpretável e depurável. Políticas aprendidas (policies) podem ser sobrepostas (por exemplo, correções residuais aprendidas (learned residual corrections)) em vez de substituir tudo.
Aprendizado para manipulação: imitação, RL e modelos fundacionais
Aprendizado por imitação e dados de teleoperação
Muitas tarefas de manipulação são difíceis de especificar como recompensas. Em vez disso, aprendemos com demonstrações:
- Clonagem comportamental (behavioral cloning): aprendizado supervisionado de ações a partir de observações de estado.
- Agregação de dados no estilo DAgger (DAgger-style): coletar correções iterativamente para reduzir erros acumulativos.
Essa abordagem é amplamente usada em robôs reais porque é eficiente em dados quando comparada a RL puro e mantém o comportamento dentro da distribuição de um demonstrador. Veja Aprendizado por Imitação.
Aprendizado por reforço (reinforcement learning, RL) e RL offline
RL pode descobrir estratégias difíceis de projetar manualmente (por exemplo, repreensão dinâmica), mas tipicamente é:
- pouco eficiente em amostras (sample-inefficient) no mundo real,
- sensível à modelagem de recompensas (reward shaping),
- frágil sob mudança de distribuição (distribution shift).
Aprendizado por reforço offline (offline RL) usa conjuntos de dados registrados de experiência do robô; pode reduzir exploração no mundo real, mas depende fortemente da qualidade e cobertura do conjunto de dados. (Relacionado: Aprendizado por Reforço.)
Aprendizado de representações (representation learning): estado centrado no objeto e pontos-chave
A manipulação se beneficia de representações estruturadas:
- pose 6D do objeto (posição + orientação)
- pontos-chave (keypoints) (aprendidos ou geométricos)
- nuvens de pontos e superfícies implícitas (implicit surfaces)
- indicadores de contato (contact indicators) (estimados de força/tátil)
Representações centradas no objeto (object-centric) podem melhorar a generalização entre cenas e reduzir a dependência de particularidades em nível de pixel.
Visão-linguagem-ação (vision-language-action, VLA) e políticas robóticas generalistas
Tendências recentes treinam políticas de grande porte (frequentemente baseadas em transformadores (transformer-based); veja Arquitetura Transformer) em trajetórias robóticas diversas para generalizar entre tarefas (“pegue a caneca vermelha”, “abra a gaveta”, etc.). Essas abordagens são promissoras, mas ainda enfrentam:
- restrições de segurança e confiabilidade em novos ambientes,
- limitações de precisão em tarefas ricas em contato,
- necessidade de dados robóticos em larga escala e de alta qualidade.
Modelos de comportamento baseados em difusão (diffusion-based behavior models) também são cada vez mais usados para geração suave de trajetórias de ação (veja Modelos de Difusão).
Desafios de dados em manipulação
Por que dados são caros
Ao contrário de conjuntos de dados de visão da internet, dados de manipulação robótica exigem:
- tempo de hardware real,
- exploração segura,
- resets cuidadosos,
- calibração,
- recuperação de falhas.
Tarefas ricas em contato são especialmente lentas de coletar: cada tentativa pode envolver interações delicadas e desalinhamentos frequentes.
Rotulagem não é direta
Rótulos como “sucesso” podem ser ambíguos:
- Uma preensão é bem-sucedida se ergue por 2 segundos ou 10 segundos?
- Uma inserção é bem-sucedida se estiver parcialmente assentada?
- Como rotular estados intermediários de contato?
Muitos sistemas usam proxies automáticos:
- sucesso de preensão pela mudança na abertura da garra + altura de elevação
- sucesso de inserção por assinatura de força-torque + pose final
- escorregamento pela dinâmica tátil
Mudança de distribuição e comportamento de cauda longa (long-tail)
Políticas de manipulação frequentemente falham em:
- novas formas/materiais de objetos,
- padrões de desordem não vistos no treinamento,
- configurações raras de contato,
- pequenas mudanças em iluminação/posicionamento de câmera.
A cobertura de dados precisa incluir variabilidade em:
- instâncias de objetos,
- poses e oclusões,
- atrito e complacência,
- desgaste da garra e deriva de sensores.
Desafios de simulação (e por que sim2real é difícil)
Realismo de contato é o problema central
Erros de simulação que mais importam em manipulação incluem:
- coeficientes de atrito e sua variação espacial,
- geometria de contato (pequenos chanfros, rebarbas, deformação),
- complacência em dedos, suportes e mesas,
- modelos de sensores (ruído de profundidade, sinais táteis).
Mesmo que um simulador corresponda bem ao movimento em espaço livre, pequenos erros em contato podem transformar um sucesso em travamento.
Aleatorização de domínio e identificação de sistema
Duas estratégias comuns:
- Aleatorização de domínio (domain randomization): aleatorizar massas, atrito, texturas, iluminação e ruído para que a política aprenda invariâncias.
- Identificação de sistema (system identification): estimar parâmetros físicos para combinar melhor com um setup real específico.
A aleatorização de domínio muitas vezes é mais fácil de implantar; a identificação de sistema pode oferecer maior precisão se feita corretamente. Ambas fazem parte do problema mais amplo de Simulação-para-Real.
Simulação diferenciável e aprendizado baseado em modelo
Física diferenciável busca calcular gradientes através da dinâmica, permitindo otimização de trajetória (trajectory optimization) e aprendizado de modelos. Contudo, contato não suave torna a diferenciação complicada; muitos métodos dependem de aproximações suavizadas ou abordagens do tipo subgradiente (subgradient).
Na prática:
- simulação diferenciável (differentiable simulation) pode ajudar em alguns regimes de contato,
- mas contato de alta fidelidade continua sendo uma fronteira de pesquisa.
Integrando planejamento com manipulação
A manipulação raramente tem sucesso com apenas “um módulo”. Padrões comuns de integração:
- Planejamento de movimento (motion planning) gera trajetórias de aproximação e retração livres de colisão (veja Planejamento de Movimento).
- Seleção de preensão escolhe uma pose estável do efetuador final e a configuração dos dedos.
- Controle por realimentação (feedback control) lida com incerteza durante a execução (veja Controle).
- Recuperação reativa (reactive recovery) lida com falhas: repreender, sacudir, tentar novamente, mudar o ângulo de aproximação.
Um exemplo prático de separação em bins:
- Detectar objetos a partir de RGB-D.
- Gerar preensões candidatas na nuvem de pontos.
- Pontuar preensões com um modelo aprendido (robusto em desordem).
- Usar planejamento de movimento para alcançar uma pose de pré-preensão sem colisões.
- Executar a aproximação final com controle complacente.
- Erguer e verificar; se falhar, atualizar a cena e tentar novamente.
Esse design híbrido é comum porque combina:
- o raciocínio global de planejadores,
- a robustez a ruído de pontuação aprendida,
- a estabilidade do controle por realimentação.
Considerações de segurança e confiabilidade
A manipulação interage fisicamente com o mundo, então falhas podem causar danos. Considerações de segurança incluem:
- limites de força/torque e gatilhos de parada de emergência (emergency stop),
- detecção de colisão (collision detection) e retração segura (safe retraction),
- restrições na velocidade do efetuador final perto de humanos,
- tratamento de falhas (fault handling) para objetos derrubados ou travamentos.
Implantação confiável normalmente requer tanto robustez aprendida quanto salvaguardas explícitas (guardrails), como discutido em Segurança em Robótica.
Avaliação: como sistemas de manipulação são medidos
Métricas comuns:
- Taxa de sucesso da tarefa (task success rate) sob condições especificadas (conjunto de objetos, nível de desordem)
- Generalização (generalization) para objetos/ambientes não vistos
- Tempo de ciclo (cycle time) e vazão (throughput) (relevância industrial)
- Modos de falha (failure modes) (quedas, travamentos, forças excessivas)
- Robustez (robustness) sob perturbações (perturbations) (objetos empurrados, percepção ruidosa)
Testes de referência (benchmarks) frequentemente diferem drasticamente em realismo; tarefas ricas em contato são mais difíceis de padronizar do que benchmarks de visão.
Problemas em aberto e direções atuais
Principais fronteiras de pesquisa incluem:
- Modelagem confiável de contato e transferência simulação-para-real para interação com atrito
- Manipulação “tátil primeiro” (tactile-first manipulation): usar toque como modalidade primária de sensoriamento
- Tarefas de longo horizonte (long-horizon), multietapas, com memória e comportamentos de recuperação
- Políticas generalistas que combinam linguagem, visão e ação mantendo segurança
- Manipulação de objetos deformáveis (tecido, cabos, alimentos), onde a geometria muda continuamente
- Planejamento e controle cientes de incerteza (uncertainty-aware planning and control): agir de forma robusta sob pose de objeto/estado de contato ambíguos
Resumo
A manipulação é difícil porque exige que robôs raciocinem sobre e controlem contato, onde a dinâmica é híbrida, dependente de atrito e apenas parcialmente observável. A preensão às vezes pode ser reduzida à seleção de pose mais verificação, mas tarefas ricas em contato demandam complacência, feedback de força/tátil e estratégias reativas. O aprendizado teve avanços importantes — especialmente com aprendizado por imitação, conjuntos de dados em larga escala e melhor percepção —, mas a coleta de dados no mundo real e a fidelidade de simulação continuam sendo gargalos importantes. Sistemas práticos tipicamente combinam planejamento, controle por realimentação e aprendizado, em vez de depender de uma única técnica.
Se você quiser conectar manipulação ao pipeline mais amplo de robótica, veja Percepção → Planejamento → Controle e, para desafios de implantação em transferência e robustez, veja Simulação-para-Real.