Open Source Robotics

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

IKPy

Biblioteca de cinemática inversa em Python puro que constrói cadeias direto do URDF

Licença

Apache-2.0

Visão geral

IKPy é uma biblioteca leve de cinemática inversa em Python puro, criada por Pierre Manceron. Ela faz o parsing de cadeias cinemáticas diretamente de arquivos URDF, resolve cinemática direta e inversa com um otimizador numérico construído sobre SciPy e inclui visualização 3D simples baseada em Matplotlib. Como não tem dependências compiladas, instala em qualquer lugar onde Python rode, o que a tornou uma favorita na educação, em braços hobbistas e no ecossistema do humanoide Poppy, do qual ela originalmente surgiu.

A IKPy modela um robô como uma Chain de links parseada do URDF (com utilitários para definições manuais no estilo DH). A cinemática direta é uma cadeia de matrizes; a cinemática inversa roda como otimização de mínimos quadrados com limites sobre os valores das juntas, com suporte a alvos de posição e orientação, máscaras de links ativos e limites de junta. A biblioteca traz utilitários de plotagem que renderizam cadeias e alvos em 3D no Matplotlib, e tutoriais que vão de um braço de dois links a robôs completos como o Baxter. Ela deliberadamente troca velocidade bruta por portabilidade e hackabilidade: tudo é NumPy/SciPy, não há extensão em C para compilar, e uma cadeia é um objeto Python simples que você pode subclassear. Esse design fez da IKPy a camada de cinemática do ecossistema do humanoide open source Poppy e uma escolha comum para ensinar IK, prototipar rapidamente e comandar braços hobbistas onde uma pilha MoveIt completa seria exagero.

Por que importa

A IKPy é a biblioteca padrão de 'IK em cinco linhas' do mundo da robótica em Python: por uma década foi o caminho de menor atrito de um arquivo URDF até uma cinemática inversa funcionando, usada na educação, na comunidade do humanoide Poppy e em incontáveis projetos de braços hobbistas.

Problema que resolve

Pilhas completas de planejamento de movimento são maquinário pesado quando você só precisa dos ângulos de junta para uma pose alvo. A IKPy dá a qualquer programa Python cinemática direta e inversa fiel ao URDF com um pip install — sem ROS, sem solvers compilados, sem cerimônia de configuração.

Pontos principais

  • Constrói cadeias cinemáticas diretamente de arquivos URDF (além de definição manual no estilo DH)
  • IK numérica com limites de junta, máscaras de links ativos e alvos de posição e orientação
  • Python puro sobre NumPy/SciPy — instala em qualquer lugar, sem dependências compiladas
  • Visualização 3D integrada de cadeias e alvos com Matplotlib
  • Camada de cinemática do ecossistema do humanoide Poppy; amplamente usada no ensino

Para quem é

  • Estudantes de robótica aprendendo cinemática
  • Construtores hobbistas de braços robóticos
  • Desenvolvedores Python criando scripts de movimento de robôs
  • Educadores montando material didático de robótica

Limitações

  • A otimização numérica é mais lenta que solvers de IK analíticos ou compilados — não serve para loops de controle de alta taxa
  • Sem verificação de colisão ou planejamento de movimento — apenas soluções de juntas
  • IK com restrição de orientação pode exigir ajustes (posições iniciais, links ativos) para convergir bem

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