관절형 로봇과 애니메이션 캐릭터의 운동학, 동역학, 접촉 시뮬레이션을 위한 Python 바인딩을 제공하는 C++17 물리 라이브러리입니다.
frankarobotics/libfranka
Franka Robotics 연구용 로봇을 실시간으로 저수준 제어하는 C++ 클라이언트 라이브러리이며, pylibfranka를 통한 Python 바인딩도 제공합니다.
- 스타
- 463
- 포크
- 258
- 열린 이슈
- 2
- 마지막 커밋
- 2개월 전
어떤 프로젝트인가요?
libfranka는 Franka Robotics 연구용 로봇을 저수준에서 실시간으로 제어하는 C++ 라이브러리입니다. 네트워크를 통해 로봇과 통신하며, 로봇 자체 소프트웨어의 상위 수준 인터페이스 대신 로봇 팔을 직접 제어해야 하는 애플리케이션에 모션 제어 기능과 로봇 상태 접근 기능을 제공합니다.
이 라이브러리는 Ubuntu 20.04, 22.04, 24.04, 26.04 LTS용 Debian 패키지로 배포되며, 소스에서 빌드하거나 CMake를 사용하는 Docker 기반 개발 환경에서 빌드할 수도 있습니다. 실시간 작동은 PREEMPT_RT 패치가 적용된 Linux 커널에서 실행하도록 설계되었습니다. 각 libfranka 릴리스가 지원하는 로봇 시스템 버전은 호환성 매트릭스에 나와 있습니다.
pylibfranka는 같은 라이브러리의 Python 바인딩을 제공하며, Ubuntu 릴리스별로 여러 Python 버전을 지원하는 휠을 PyPI에서 설치할 수 있습니다. 저장소에는 관절 위치 및 임피던스 제어, 로봇 상태 출력, 그리퍼 작동을 위한 예제 프로그램도 포함되어 있습니다.
핵심 기능
- 01Franka 연구용 로봇의 저수준 실시간 모션 제어.
- 02로봇 상태를 읽고 명령을 전송하는 네트워크 통신.
- 03PyPI에서 설치할 수 있는 Python 바인딩(pylibfranka).
- 04Ubuntu 20.04~26.04 LTS용 Debian 패키지 및 소스 빌드.
- 05관절 임피던스 제어, 로봇 상태 출력, 그리퍼 작동을 위한 예제 프로그램.
활용 사례
- Franka 로봇 팔을 직접 실시간으로 제어해야 하는 연구 프로젝트.
- C++ 또는 Python으로 임피던스 제어, 관절 위치 제어 등의 사용자 지정 컨트롤러 작성.
- Franka 로봇을 외부 제어 루프 또는 연구용 소프트웨어 스택과 통합.
- 사용자 지정 애플리케이션에서 Franka 그리퍼 작동.
빠른 시작
- 1
GitHub 릴리스 페이지에서 사용 중인 Ubuntu 버전에 맞는 libfranka Debian 패키지를 다운로드합니다
wget https://github.com/frankarobotics/libfranka/releases/download/0.19.0/libfranka_0.19.0_jammy_amd64.deb - 2
패키지 체크섬을 확인합니다
sha256sum -c libfranka_0.19.0_jammy_amd64.deb.sha256 - 3
패키지를 설치합니다
sudo dpkg -i libfranka_0.19.0_jammy_amd64.deb
사용 전 알아둘 점
- FCI 기능이 설치된 Franka Robotics 연구용 로봇을 대상으로 하며, 해당 하드웨어가 없으면 유용하지 않습니다.
- 공식적으로 Ubuntu Linux만 지원하며, 실시간 제어에는 PREEMPT_RT 커널을 권장합니다.
포함된 컬렉션
토픽
자주 묻는 질문
- libfranka은(는) 무엇인가요?
- Franka Robotics 연구용 로봇을 실시간으로 저수준 제어하는 C++ 클라이언트 라이브러리이며, pylibfranka를 통한 Python 바인딩도 제공합니다. libfranka는 Franka Robotics 연구용 로봇을 저수준에서 실시간으로 제어하는 C++ 라이브러리입니다. 네트워크를 통해 로봇과 통신하며, 로봇 자체 소프트웨어의 상위 수준 인터페이스 대신 로봇 팔을 직접 제어해야 하는 애플리케이션에 모션 제어 기능과 로봇 상태 접근 기능을 제공합니다.
- libfranka은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- libfranka은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- libfranka은(는) 아직 유지보수되고 있나요?
- 6개월 이내 업데이트. libfranka의 마지막 커밋은 2026년 9월 7일입니다.
- libfranka은(는) 어디에 사용할 수 있나요?
- Franka 로봇 팔을 직접 실시간으로 제어해야 하는 연구 프로젝트. C++ 또는 Python으로 임피던스 제어, 관절 위치 제어 등의 사용자 지정 컨트롤러 작성. Franka 로봇을 외부 제어 루프 또는 연구용 소프트웨어 스택과 통합. 사용자 지정 애플리케이션에서 Franka 그리퍼 작동.
- libfranka는 어떻게 설치하나요?
- GitHub 릴리스 페이지에서 사용 중인 Ubuntu 버전에 맞는 libfranka Debian 패키지를 다운로드합니다: wget https://github.com/frankarobotics/libfranka/releases/download/0.19.0/libfranka_0.19.0_jammy_amd64.deb 패키지 체크섬을 확인합니다: sha256sum -c libfranka_0.19.0_jammy_amd64.deb.sha256 패키지를 설치합니다: sudo dpkg -i libfranka_0.19.0_jammy_amd64.deb
- libfranka은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/frankarobotics/libfranka
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
LinuxCNC는 밀링 머신, 선반, 3D 프린터, 레이저·플라즈마 커터, 로봇 팔 등의 CNC 장비를 제어하는 오픈소스 소프트웨어입니다.
실제 로봇과 MuJoCo 시뮬레이션에서 동일한 ros2_control 컨트롤러를 실행하는 Franka Emika Panda용 ROS 2 Humble 통합 프로젝트입니다.
LeRobot 라이브러리와 함께 사용할 수 있는 저가형 SO-100/SO-101 로봇 팔의 오픈소스 3D 프린팅 설계와 부품 목록입니다.
원격 조작과 모방 학습을 위한 5자유도 그리퍼 포함 오픈소스 리더-팔로워 로봇 팔 키트
Smoothed Particle Hydrodynamics(SPH)를 이용한 물리 기반 유체 시뮬레이션 오픈소스 C++ 라이브러리로, Python 바인딩과 CLI를 제공합니다.