유니트리 MuJoCo — C++·Python 시뮬레이터 설치 안내
자료·번역 범위
Unitree SDK2와 MuJoCo를 연결하는 공식 시뮬레이터의 Installation(설치) 구획을 번역했습니다. C++와 Python 구현을 제공하며 저수준 제어기의 시뮬레이션 검증용입니다. SDK2 Python 자체 안내와는 별도 저장소입니다.
C++ 의존성
sudo apt install libyaml-cpp-dev libspdlog-dev libboost-all-dev libglfw3-dev 로 의존성을 설치합니다. unitree_sdk2 저장소를 복제하고 build 폴더에서 cmake .. -DCMAKE_INSTALL_PREFIX=/opt/unitree_robotics 다음 sudo make install 을 실행합니다. SDK2 상세 안내도 함께 확인합니다.
MuJoCo와 빌드
공식 MuJoCo 릴리스를 ~/.mujoco에 풉니다. README 예시는 unitree_mujoco/simulate에서 ln -s ~/.mujoco/mujoco-3.3.6 mujoco 로 연결합니다. simulate/build를 만들고 그 안에서 cmake .. 및 make -j4 로 빌드합니다.
C++ 시험과 AS2
./unitree_mujoco -r go2 -s scene_terrain.xml 로 Go2 장면을 연 뒤 다른 터미널에서 ./test 를 실행합니다. 시뮬레이터 자세·위치가 출력되고 각 모터에 1Nm가 계속 입력됩니다. 시험 프로그램은 unitree_go 메시지를 보내므로 G1에는 unitree_hg로 변경해야 합니다. AS2는 -r as2일 때 unitree_hg가 자동 선택되며 -t 1로 명시할 수도 있습니다. 평지 예시는 ./unitree_mujoco -r as2 -s plane_terrain.xml -t 1 이며 거친 지형은 scene_terrain.xml을 사용합니다.
Python 의존성
python3-pip을 설치하고 unitree_sdk2_python 저장소를 복제한 뒤 그 폴더에서 pip3 install -e . 를 실행합니다. cyclonedds를 찾지 못하고 CYCLONEDDS_HOME/CMAKE_PREFIX_PATH를 요구하는 오류는 SDK2 Python 저장소 안내를 따릅니다. 이어 pip3 install mujoco 및 pip3 install pygame 을 설치합니다.
Python 시험
simulate_python에서 python3 ./unitree_mujoco.py 로 Go2 장면을 열고 별도 터미널에서 python3 ./test/test_unitree_sdk2.py 를 실행합니다. 자세·위치를 출력하며 각 모터에 1Nm를 계속 입력하는 시험입니다. 여기서도 G1 시험에는 unitree_go 대신 unitree_hg 메시지가 필요합니다.
시뮬레이션 통신 설정
원문 Usage 안내에 따르면 시뮬레이션에는 DDS domain 1과 루프백 lo를 사용하고 실물의 기본 domain 0과 구별합니다. C++ 설정은 simulate/config.yaml, Python 설정은 simulate_python/config.py에 있습니다. 게임패드가 없으면 use_joystick/USE_JOYSTICK를 0으로 설정합니다. 실물과 시뮬레이션의 메시지 제공 조건이 항상 같지는 않으므로 원문 주의사항을 확인해야 합니다.
버전·날짜·이용 조건
이 안내는 저장소 커밋 1eb6642e3f3fdfb7fb13a9794fd6a2dd93ea0e7d을 기준으로 2026년 10월 4일 작성했습니다. 표시 날짜 2026-09-07은 해당 커밋 날짜입니다. GitHub 저장소 생성일은 2021-11-01이며 로봇 출시일로 간주하지 않습니다. 첨부한 원문과 라이선스를 함께 보존하며 한국어 번역·편집 사실을 표시합니다. 실제 하드웨어에서 실행 검증한 자료는 아닙니다.
첨부파일
- 공식 원문 안내 (선택 문서) — README-original.md ↓12357 bytes · SHA-256 bedce1126b459c6bb6d2e0d0fc044cde978aeaed55d7548b4eeedb27ba51d8f0
- 원본 라이선스 — LICENSE.txt ↓1559 bytes · SHA-256 a5d73fc4aca9074e3e6fe0b1a0ba763cf9514b2249b7390ed20fe8d53630bf25
- 한국어 안내·번역 — guide-ko.md ↓5391 bytes · SHA-256 7bdcccca9ade8b58f576c7ee64eb1d26137769635ee8c2a62ac64141f2e14482