kPAM 2.0: Feedback Control for Category-Level Robotic Manipulation
Autores: Wei Gao, Russ Tedrake · ICRA 2021
Licenças
- Acesso aberto
- Artigo: CC BY 4.0
Tudo o que segue se baseia no artigo completo sob a licença CC BY 4.0; sua figura é mostrada com crédito aos autores.
Em resumo
Pontos-chave 3D orientados servem como estado e ação de um controlador em malha fechada, de modo que uma única política resolve inserção de pino em furo com 0,2 mm, LEGO, USB e limpeza apesar da variação de forma.
Por que importa
Como estado e ação se referem apenas à parte do objeto relevante para a tarefa, o mesmo controlador funciona com diferentes instâncias de objetos, poses de preensão e configurações iniciais sem ajuste por instância. O arcabouço fixa apenas as interfaces, então outros módulos de percepção e agentes baseados em modelo ou aprendidos podem ser acoplados.
Problema
Pipelines de manipulação em malha fechada normalmente constroem a realimentação sobre um estimador de pose 6-DOF em tempo real, mas uma pose definida sobre um modelo geométrico fixo não captura grandes variações de forma dentro de uma categoria. O método original de pontos-chave kPAM lida com pick-and-place em nível de categoria, mas supõe que uma transformação rígida arbitrária pode ser aplicada ao objeto, o que não vale para tarefas ricas em contato, como a inserção de pino em furo.
Solução proposta
Os pontos-chave recebem um referencial de orientação local, e a ação do robô é expressa como a velocidade linear/angular ou a força/torque desejadas de um ponto-chave orientado, convertidas em comandos de junta pela jacobiana do ponto-chave. As leituras de força/torque são transformadas para o ponto-chave como um sensor virtual, entradas e saídas são reexpressas em um referencial nominal para se adaptar a novas posições, e uma etapa de pick-and-place do kPAM, simplificada pelos pontos-chave orientados, leva o objeto à configuração inicial.
Principais ideias
- Um ponto-chave orientado, local e específico da tarefa ignora geometria irrelevante, como o cabo que o robô segura, e é isso que permite generalizar em nível de categoria.
- Se o objeto é rígido e está bem preso, ele pode ser tratado como parte do robô, de modo que controladores padrão no espaço das juntas convertem os comandos de velocidade ou força do ponto-chave para as juntas.
- Transformar as leituras de força/torque do punho para o referencial do ponto-chave as torna independentes da geometria do objeto e da pose de preensão.
- Um erro visual do ponto-chave de cerca de 5 mm a 80 cm excede em muito uma folga de 0,2 mm, então é necessária correção em malha fechada com pontos-chave e força/torque; a reprodução em malha aberta falha.
- Acrescentar orientação aos pontos-chave do kPAM elimina, em muitos casos, a necessidade de resolver uma otimização de custo/restrições para o alvo do pick-and-place.
Principais resultados
- Taxas de falha, método versus linha de base em malha aberta: limpeza de quadro branco 1/25 (4 %) vs 16/20 (80 %); pino e furo impressos em 3D com folga de 0,2 mm 12/45 (26 %) vs 19/20 (95 %).
- Blocos LEGO 2/25 (8 %) vs 7/20 (35 %); porta USB 9/20 (45 %) vs 20/20 (100 %).
- Uma linha de base de pose 6-DOF (inicialização por pontos-chave mais ICP para um modelo) falhou 10/25 (40 %) na limpeza, 25/45 (55 %) no pino e furo impressos, 9/25 (36 %) no LEGO e 17/20 (85 %) no USB, com alguns ensaios exigindo parada de segurança.
- A limpeza regulou uma força normal nominal de 10 N; um ensaio contava como falha se o ponto-chave frontal do apagador se desviasse mais de 2 cm da borda do quadro ou se a força caísse abaixo de 5 N.
- No USB, cerca de 3 mm de erro no lado curto causa falha; um esquema em duas etapas, primeiro grosseiro e depois de perto, com a câmera do punho reduziu o erro de percepção para 2 mm.
- Um agente aprendido por imitação dos ensaios bem-sucedidos funcionou nas três categorias de pino e furo, mas não superou o controlador escrito à mão, que ele quase reproduziu.
Limitações
- Pontos-chave esparsos não dão conta de tarefas que exigem geometria densa, por exemplo reconhecer que um pino é maior que seu furo, nem do planejamento de trajetória livre de colisões (segundo os autores).
- Supõe-se que o objeto está estático em relação à garra, o que restringe as forças aplicadas às equilibradas dentro dos cones de atrito estático; a câmera montada no punho não consegue detectar o escorregamento entre garra e objeto (segundo os autores).
- As falhas vieram de preensões malsucedidas e de erros dos pontos-chave grandes demais para a realimentação corrigir, e o pen drive USB teve de ser fixado previamente à garra por causa da dificuldade de preensão (segundo os autores).
- Os pontos-chave específicos de cada tarefa precisam ser escolhidos por quem modela.
- O modelo do robô e a configuração detalhada são remetidos a um apêndice que não faz parte desta cópia arXiv v1.
Impacto na área
Foi finalista do IEEE ICRA 2021 Best Paper Award in Robot Manipulation e tem 91 citações. O artigo informa que a demonstração em vídeo e o código-fonte estão disponíveis e dá como link https://sites.google.com/view/kpam2/.
Resumo
Neste artigo, exploramos a manipulação robótica generalizável, da percepção à ação, para tarefas precisas e ricas em contato. Em particular, contribuímos com um arcabouço para manipulação robótica em malha fechada que lida automaticamente com uma categoria de objetos, apesar de instâncias de objetos possivelmente não vistas e de variações intracategoria significativas de forma, tamanho e aparência. Abordagens anteriores normalmente constroem uma malha de realimentação sobre um estimador de pose 6-DOF em tempo real. No entanto, representar um objeto com uma transformação parametrizada a partir de um modelo geométrico fixo não captura grandes variações de forma intracategoria. Por isso, adotamos a representação de objetos baseada em pontos-chave proposta no kPAM [13] para pick-and-place em nível de categoria e a estendemos a políticas de manipulação em malha fechada com tarefas ricas em contato. Primeiro, acrescentamos aos pontos-chave informação de orientação local. Usando os pontos-chave orientados, propomos uma nova representação de ações centrada no objeto, em termos de regular a velocidade linear/angular ou a força/torque desses pontos-chave orientados. Essa formulação é surpreendentemente versátil: demonstramos que ela consegue realizar tarefas de manipulação ricas em contato que exigem precisão e destreza para uma categoria de objetos com formas, tamanhos e aparências diferentes, como a inserção de pino em furo para pinos e furos com variação de forma significativa e folga estreita. Com a representação de objetos e de ações proposta, nosso arcabouço também é agnóstico à pose de preensão do robô e à configuração inicial do objeto, o que o torna flexível para integração e implantação. A demonstração em vídeo e o código-fonte estão disponíveis neste link.
Links
- arXiv 2102.06279: https://arxiv.org/abs/2102.06279
- DOI 10.1109/LRA.2021.3062315: https://doi.org/10.1109/LRA.2021.3062315
- PDF: https://arxiv.org/pdf/2102.06279v1
- Página do projeto: https://sites.google.com/view/kpam2/