Codes

Franka research3 Python으로 제어하기

Na_ai 2026. 1. 2. 15:29

일단 기본적으로 python으로 지원을 별로 안좋아하는 듯하다. 실시간 제어해야하니까... 그래 OK 그러나 파이썬이 편한걸 어차피 모델 추론 지연시간이 더 길어서 말입니다. 근데 문제점은 주로 Conda를 쓰면 문제가 생기는 경우가 많은걸로 알아서 비활성화 한뒤에 설치를 진행하자.

일단 빌드를 위해 필요한 도구부터 설치한다. https://github.com/frankarobotics/libfranka?tab=readme-ov-file 

 

GitHub - frankarobotics/libfranka: C++ client library to control Franka robots in real-time

C++ client library to control Franka robots in real-time - GitHub - frankarobotics/libfranka: C++ client library to control Franka robots in real-time

github.com

설치는 메뉴얼 따라가는게 제일이다 나름 잘 정리해두신듯 굳굳

이후에 conda 환경에 들어가서 설치 진행하면 된다. 사실상 중요 포인트는 설치는 Conda 끄고 진행하면 다 될꺼고 이후에 예제 파일을 실행해보려고 하면 1. RT 커널이 아닌경우 2. CPU 성능 모드로 되어있는지 확인 등과 같은 이슈를 해결하면 파이썬 예제 파일 동작되는 것을 확인할 수 있을 것이다. 

# 1. Conda 켜기
conda activate lerobot

# 2. libfranka 설치
cd ~/NAS/VLA/libfranka
rm -rf build pylibfranka.egg-info
unset CC CXX CMAKE_PREFIX_PATH

# 정적 라이브러리를 찾도록 설정
export CMAKE_ARGS="-DBUILD_EXAMPLES=OFF -DBUILD_TESTS=OFF"
pip install . -v

 

예제 코드 github - https://github.com/frankarobotics/libfranka/blob/main/pylibfranka/README.md

 

libfranka/pylibfranka/README.md at main · frankarobotics/libfranka

C++ client library to control Franka robots in real-time - frankarobotics/libfranka

github.com

사용자가 Real time 커널을 사용할 수 있도록 conf를 추가해준다.

sudo groupadd realtime
sudo usermod -aG realtime $USER

sudo nano /etc/security/limits.d/99-realtime.conf

# 내용 추가 및 저장
# @realtime - rtprio 99
# @realtime - memlock unlimited

sudo reboot

Real time 커널 확인

ulimit -r -l

# 다음과 같이 나와야함
# real-time priority                  (-r) 99
# max locked memory           (kbytes, -l) unlimited

CPU 성능 모드 변경

# CPU 주파수 관리 도구 설치
sudo apt-get install -y cpufrequtils

# 모든 코어를 'performance' 모드로 변경
echo 'GOVERNOR="performance"' | sudo tee /etc/default/cpufrequtils
sudo systemctl restart cpufrequtils

# 확인 (모든 코어가 performance인지 확인)
cpufreq-info | grep "current policy"

다음과 같이 설정 이후에 본인 로봇을 연결 후 예제 파일을 테스트 해보면 잘 동작하였다.

 

반응형

'Codes' 카테고리의 다른 글

Gemini Cli 설치하기 + mcp 추가  (0) 2026.01.05