leggedrobotics/pace-sim2real
PACE: A systematic approach for sim-to-real transfer of legged robots, identifying actuator and joint dynamics with standard joint encoders.
PACE – 보행 로봇의 시뮬레이션-실제 전이
기능 – PACE(Precise Adaptation through Continuous Evolution)는 물리 시뮬레이터에서 실제 로봇으로 보행 로봇 컨트롤러를 이동하는 데 도움을 주는 Python 프레임워크입니다. 다음과 같이 작동합니다:
- 실제 액추에이터/관절 데이터를 수집합니다(또는 시뮬레이션 데이터를 대용으로 사용).
- CMA‑ES 진화 알고리즘을 사용하여 물리적으로 의미 있는 동역학 매개변수(예: 모터 상수, 마찰)를 최적화합니다.
- 학습된 매개변수를 NVIDIA Isaac Lab에 피드백하여 시뮬레이션 로봇이 하드웨어처럼 동작하도록 하여 이동 성능을 향상시킵니다.
주요 구성 요소
pace_sim2real패키지 – 핵심 클래스(PaceCfg,PaceSim2realEnvCfg,CMAESOptimizer) 및 모터 모델 정의를 위한 유틸리티.- 예제 스크립트:
scripts/pace/data_collection.py– Isaac Lab에서 짧은 여기 운동을 실행하고 데이터를 저장합니다.scripts/pace/fit.py– CMA‑ES를 실행하여 액추에이터/관절 매개변수를 피팅하고 로그 폴더를 작성합니다.
- Isaac Lab의 작업/환경 시스템과의 통합(
pace_sim2real.tasks가 환경을 등록).
대상 사용자 – 보행 플랫폼(예: ANYmal D)을 다루는 연구자나 엔지니어로, 이미 NVIDIA Isaac Lab을 사용하고 있으며 시뮬레이션-실제 전이를 위해 로봇 동역학을 체계적으로 식별할 필요가 있는 분들.
시작하기
- Isaac Lab(v5.0 이상)을 설치합니다.
- 저장소를 클론하고 패키지를 편집 가능 모드로 설치합니다(
pip install -e source/pace_sim2real). - Isaac Lab conda 환경을 활성화합니다.
- 데이터 수집 스크립트를 실행한 다음 피팅 스크립트를 실행합니다. 피팅된 매개변수는
logs/pace/<robot>_sim/아래에 나타납니다.
문서 및 지원 – 전체 문서는 https://pace.filipbjelonic.com (MkDocs)에서 호스팅됩니다. 이 프로젝트는 Apache‑2.0 라이선스이며, ETH Zurich Robotic Systems Lab에서 적극적으로 유지 관리하고 있으며, 기여 지침과 pre-commit 포맷 훅을 포함합니다.
요약 – PACE는 시스템 식별과 진화적 최적화를 위한 전문 오픈소스 도구 상자로, Isaac Lab 시뮬레이션과 실제 보행 로봇 간의 연결을 강화하여 시뮬레이션-실제 전이를 더욱 신뢰할 수 있게 만듭니다.
관련
- 프로젝트
- 프로젝트
- Dispatch
- 프로젝트
- 프로젝트