Skip to content

Low Level (RL 정책) Python — 빠른 시작

소스: rbq_sdk/python/example/sport/rbq_low_level.py

C++ rbq_low_level 예제의 Python 포팅 버전입니다. RL 정책(info.json + policy.onnx)을 로드해 10 Hz로 저수준 관절 제어를 수행합니다.

설치

bash
cd RBQ/rbq_sdk/python
pip install -e .
pip install onnxruntime

실행

bash
cd RBQ/rbq_sdk/python/example/low_level
python3 rbq_low_level.py -p <policyDir> [networkInterface]
bash
# 시뮬레이션 (루프백 — networkInterface 생략 가능)
python3 rbq_low_level.py -p ../../../../rbq_simulator/rbq_gym/policy/rbq10/

# 실제 로봇
python3 rbq_low_level.py -p ../../../../rbq_simulator/rbq_gym/policy/rbq10/ eth0

-p필수info.jsonpolicy.onnx가 있는 디렉토리를 지정합니다.

C++ 버전과 달리 sudo가 필요하지 않습니다 (Python은 실시간 스레드를 쓰지 않습니다).

시뮬레이션으로 실행

  1. RBQ/ 루트에서:
    bash
    bash scripts/sim.bash
  2. RBQGUI: ConnectAuto Start RobotStance (2).
  3. 예제 실행 (시뮬레이션에서는 networkInterface 생략 가능):
    bash
    python3 rbq_low_level.py -p ../../../../rbq_simulator/rbq_gym/policy/rbq10/

키보드 제어

동작
x서기 (ready 자세)
z앉기 (ground 자세)
c걷기 시작 (정책 로드 및 실행)
q종료

정책 디렉토리

저장소에 포함된 사전 학습 정책:

rbq_simulator/rbq_gym/policy/rbq10/
├── info.json
└── policy.onnx

지원 정책 이름 (info.jsonrun_name): rbq10, rbq10_trot, rbq10_trot_run.

Isaac Gym이나 Isaac Lab으로 직접 학습한 정책도 -p로 지정할 수 있습니다.

상태 머신

상태진입 방법동작
Idle(기본)스택의 최종 관절 레퍼런스를 미러링
Motionx 또는 z코사인 보간으로 ready / ground 자세로 이동
ControlcONNX 정책을 10 Hz로 실행, 관절 레퍼런스 발행

C++ 버전: Low Level (C++)

This user manual is intended for RBQ users.