Biblioteca de física em C++17 com bindings para Python, voltada à cinemática, dinâmica e simulação de contato de robôs articulados e personagens animados.
frankarobotics/libfranka
Biblioteca cliente em C++ para controle de baixo nível em tempo real de robôs de pesquisa da Franka Robotics, com bindings para Python via pylibfranka.
- Estrelas
- 463
- Forks
- 258
- Issues abertas
- 2
- Último commit
- há 2 meses
O que é?
libfranka é uma biblioteca em C++ para controle de baixo nível e em tempo real de robôs de pesquisa da Franka Robotics. Ela se comunica com o robô pela rede e oferece controle de movimento e acesso ao estado do robô para aplicações que precisam controlar o braço diretamente, em vez de usar as interfaces de nível mais alto do próprio software do robô.
A biblioteca é distribuída como pacotes Debian para Ubuntu 20.04, 22.04, 24.04 e 26.04 LTS, e também pode ser compilada a partir do código-fonte ou em um ambiente de desenvolvimento baseado em Docker usando CMake. A operação em tempo real foi projetada para ser executada em um kernel Linux com o patch PREEMPT_RT. Cada versão do libfranka é compatível com versões específicas do sistema do robô, listadas em uma matriz de compatibilidade.
pylibfranka oferece bindings para Python da mesma biblioteca e pode ser instalado pelo PyPI, com wheels para várias versões do Python vinculadas a versões do Ubuntu. O repositório também inclui programas de exemplo para controle de posição e impedância das juntas, exibição do estado do robô e operação da garra.
Recursos principais
- 01Controle de movimento de baixo nível e em tempo real de robôs de pesquisa da Franka.
- 02Comunicação em rede com o robô para ler o estado e enviar comandos.
- 03Bindings para Python (pylibfranka) instaláveis pelo PyPI.
- 04Pacotes Debian e compilação a partir do código-fonte para Ubuntu 20.04 a 26.04 LTS.
- 05Programas de exemplo para controle de impedância das juntas, exibição do estado do robô e operação da garra.
Casos de uso
- Projetos de pesquisa que precisam controlar diretamente um braço Franka em tempo real.
- Desenvolvimento de controladores personalizados, como controle de impedância ou de posição das juntas, em C++ ou Python.
- Integração de robôs Franka com loops de controle externos ou stacks de software para pesquisa.
- Operação da garra Franka a partir de aplicações personalizadas.
Início rápido
- 1
Baixe o pacote Debian do libfranka para sua versão do Ubuntu na página de releases do GitHub
wget https://github.com/frankarobotics/libfranka/releases/download/0.19.0/libfranka_0.19.0_jammy_amd64.deb - 2
Verifique o checksum do pacote
sha256sum -c libfranka_0.19.0_jammy_amd64.deb.sha256 - 3
Instale o pacote
sudo dpkg -i libfranka_0.19.0_jammy_amd64.deb
Antes de usar
- Destina-se a robôs de pesquisa da Franka Robotics com o recurso FCI instalado; não é útil sem esse hardware.
- Oferece suporte oficial apenas ao Ubuntu Linux; recomenda-se um kernel PREEMPT_RT para controle em tempo real.
Em coleções
Tópicos
Perguntas frequentes
- O que é libfranka?
- Biblioteca cliente em C++ para controle de baixo nível em tempo real de robôs de pesquisa da Franka Robotics, com bindings para Python via pylibfranka. libfranka é uma biblioteca em C++ para controle de baixo nível e em tempo real de robôs de pesquisa da Franka Robotics. Ela se comunica com o robô pela rede e oferece controle de movimento e acesso ao estado do robô para aplicações que precisam controlar o braço diretamente, em vez de usar as interfaces de nível mais alto do próprio software do robô.
- libfranka é gratuito? Qual é a licença?
- libfranka é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- libfranka ainda é mantido?
- Atualizado nos últimos 6 meses. O último commit de libfranka foi em 7 de set. de 2026.
- Para que posso usar libfranka?
- Projetos de pesquisa que precisam controlar diretamente um braço Franka em tempo real. Desenvolvimento de controladores personalizados, como controle de impedância ou de posição das juntas, em C++ ou Python. Integração de robôs Franka com loops de controle externos ou stacks de software para pesquisa. Operação da garra Franka a partir de aplicações personalizadas.
- Como instalar libfranka?
- Baixe o pacote Debian do libfranka para sua versão do Ubuntu na página de releases do GitHub: wget https://github.com/frankarobotics/libfranka/releases/download/0.19.0/libfranka_0.19.0_jammy_amd64.deb Verifique o checksum do pacote: sha256sum -c libfranka_0.19.0_jammy_amd64.deb.sha256 Instale o pacote: sudo dpkg -i libfranka_0.19.0_jammy_amd64.deb
- Onde consigo libfranka?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/frankarobotics/libfranka
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
LinuxCNC é um software de código aberto para controlar máquinas CNC, como fresadoras, tornos, impressoras 3D, cortadoras a laser e plasma e braços robóticos.
Integração com ROS 2 Humble para o braço Franka Emika Panda, que executa os mesmos controllers do ros2_control em robôs reais e na simulação MuJoCo.
Projetos open source imprimíveis em 3D e listas de peças para os braços robóticos de baixo custo SO-100/SO-101, feitos para funcionar com a biblioteca LeRobot.
Kit open source de braço robótico líder e seguidor, com 5 DOF e uma garra, peças imprimíveis em 3D e disposição de juntas compatível com o LeRobot para teleoperação e aprendizado por imitação.
Biblioteca open source em C++ para simulação de fluidos baseada em física usando Smoothed Particle Hydrodynamics (SPH), com binding para Python e CLI.