개발자 가이드
📚 소개
RBQ 시뮬레이션, 명령 및 배포/업데이트 매뉴얼에 오신 것을 환영합니다
이 매뉴얼은 RBQ 로봇을 시뮬레이션하고 명령하며 실제 로봇에 자신만의 알고리즘을 배포하는 방법에 대한 종합적인 가이드를 제공합니다.
✅ 🖥️ 개발자를 위한 즉시 사용 가능한 시뮬레이터 및 그래픽 사용자 인터페이스
RBQ 로봇은 MuJoCo를 사용하여 정확하게 시뮬레이션할 수 있습니다.
📝 개발자는 다음 파일을 편집하여 시뮬레이션 환경 "playground"를 수정할 수 있습니다:
resources/model/environment.xmlRBQ GUI는 사용자가 로봇에 명령을 내리고 모니터링할 수 있는 직관적인 인터페이스를 제공하도록 설계되었습니다.
- 로봇 상태, 센서 상태에 대한 시각적 피드백을 제공하며 키보드와 조이스틱 입력을 모두 지원합니다.
GUI 개요
- 이 섹션에서는 RBQ GUI 사용 방법을 설명하며, 주요 기능과 인터페이스 레이아웃을 포함합니다.

- [1] : 상단 패널
- [2] : 중앙 패널
- [3] : 3D 패널
📌 상단 패널
상단 패널은 로봇 연결, 자세 초기화, 모터 상태 확인 등 핵심 기능을 제공합니다. 비상 정지 버튼과 배터리 전압 및 IMU 센서 상태 표시기도 포함되어 있습니다.
연결 상태 및 버튼: 로봇 연결 여부를 표시합니다. 이 버튼을 사용하여 로봇과 연결하거나 끊을 수 있습니다.
Auto Start 버튼: [모터 확인 --> 자세 초기화 --> 제어 시작] 순서로 로봇을 자동으로 초기화하고 제어 시스템을 준비합니다.
모터 확인 / 자세 초기화 / 제어 시작 버튼: 각각의 시작 동작을 개별적으로 수행할 수 있습니다. 하지만 Auto Start 버튼을 사용하는 것이 권장됩니다.
📝 시뮬레이션: 제어 시작 버튼만 초록색으로 표시됩니다. 실제 로봇: 준비되면 세 버튼 표시등이 모두 초록색으로 변경됩니다.비상 정지 버튼: 로봇의 모든 동작을 즉시 중단하여 로봇이 부드럽게 내려앉도록 합니다.
비상 정지 후 동작을 재개하려면 Gait select 그룹 박스에서 Stance 버튼을 누르십시오.
📝 시스템은 자세 동작(초록색)으로 전환하기 전에 자동 복구 모드(노란색)로 진입합니다.
📌 중앙 패널
중앙 패널에는 로봇에 다양한 명령을 보내기 위한 버튼이 있는 탭이 포함되어 있습니다.
📝 실제 로봇에서는 추가적으로 관절, 펌웨어, 전원 탭이 있지만 사용하지 않는 것을 권장합니다.
[ 보행 탭 ] 로봇의 걷기 동작과 보행 방식 간 전환을 명령합니다.
✅ 버튼 동작 Sit Stance Walk Stairs Running RL-trot RL-pronk ⌨️ 키보드 키 1 2 3 4 5 R F
📌 3D 패널
- 이 패널은 연결된 로봇의 현재 자세를 3D로 렌더링한 디지털 트윈을 표시합니다.
📦 설치
- 이 섹션에서는 처음부터 RBQ 로봇 시뮬레이션 및 개발 환경을 설치하고 설정하는 방법을 설명합니다.
💻 시스템 요구사항
RBQ 시뮬레이션 및 배포 환경을 원활하게 실행하기 위해 다음 요구사항이 권장됩니다:
운영 체제: Ubuntu 22.04 (x86)
최소 PC 사양:
- CPU: Intel Core i7 12세대
- RAM: 16 GB
- 저장 공간: 25 GB
제어 장치
- 키보드: W, A, S, D, Q, E, R, F, [1-5] 키
- 조이스틱: Logitech Wireless Gamepad F710 (권장)

📥 1. RBQ 저장소 다운로드
- 다음 명령어를 사용하여 저장소를 복제하세요:
git clone https://github.com/RainbowRobotics/RBQ.git🛠️ 2. 환경 설정
- 다음 명령어를 사용하여 필요한 라이브러리를 설치하세요:
bash scripts/setup.bash▶️ 시뮬레이션
- 스크립트를 사용하여 RBQ 제어 모듈, MuJoCo 시뮬레이터 및 GUI를 함께 시작합니다.
참고: 인자:
--help: 도움말 메시지를 표시하고 종료합니다.--vision: 비전 모듈을 실행합니다 (예: 비전 센서, 계단 오르기 활성화).
bash scripts/sim.bash- 프롬프트가 표시되면 새로 열린 CLI 터미널에서
사용자 비밀번호를 입력하여 프로세스를 시작합니다.
🔗 초기화 — 시뮬레이션 로봇 연결 및 시작
RBQ GUI에서 연결 버튼을 클릭하여 연결을 설정합니다.- 성공하면
연결 표시등이 시뮬레이터 연결됨 텍스트와 파란색으로 변경됩니다.
- 성공하면
RBQ GUI에서 로봇 자동 시작 버튼을 클릭하여 제어를 시작합니다.- 성공하면
제어 표시등이 초록색으로 변경됩니다.
- 성공하면
📌 자세 유지 — 로봇이 서도록 명령하기
- 경로:
"Walk" tab --> "Gait select" group-box --> "Stance" 버튼또는 키보드 버튼2를 누르세요 - 명령이 내려지면 로봇이 서 있는 자세로 이동하기 시작합니다. 완료되면 추가 명령에 응답합니다.
- 📝 현재 자세에 따라 서 있는 자세로 전환하는 데 몇 초가 걸릴 수 있습니다.
| 🕹️ Joystick | Command | Keyboard key | Robot Action |
|---|---|---|---|
| L Stick | Forward / Backward | W / S | Nose up / down |
| L Stick | Left / Right | Q / E | Roll Left / Right |
| R Stick | Forward / Backward | Height up / down | |
| R Stick | Left / Right | A / D | Turn Left / Right |
| Shift | Full range of motion |
- 📝 조이스틱이 연결되면 키보드의 숫자 키만 바인딩됩니다.
📌 걷기 — 로봇이 걷도록 명령하기
- 경로:
"Walk" 탭 --> "Gait select" 그룹 박스 --> "Walk" 버튼또는 키보드 버튼3을 누르세요 - 명령이 내려지면 로봇이 걷기 보행으로 전환됩니다. 완료되면 추가 명령에 응답합니다.
| 🕹️ Joystick | Command | Keyboard key | Robot Action |
|---|---|---|---|
| L Stick | Forward / Backward | W / S | Go Forward / Backward |
| L Stick | Left / Right | Q / E | Go Left / Right |
| R Stick | Forward / Backward | Pitch Forward / Backward | |
| R Stick | Left / Right | A / D | Turn Left / Right |
| Shift | Full speed of motion |
- 📝 조이스틱이 연결되면 키보드의 숫자 키만 바인딩됩니다.
📌 계단 오르기 — 로봇이 계단을 오르도록 명령하기
- 경로:
"Walk" 탭 --> "Gait select" 그룹 박스 --> "Stairs" 버튼또는 키보드 버튼4를 누르세요 - 로봇은 비전 기능을 활용하여 계단을 올라갑니다.
| 🕹️ Joystick | Command | Keyboard key | Robot Action |
|---|---|---|---|
| L Stick | Forward / Backward | W / S | Go Forward / Backward |
| L Stick | Left / Right | Q / E | Go Left / Right |
| R Stick | Forward / Backward | ||
| R Stick | Left / Right | A / D | Turn Left / Right |
| Shift | Full speed of motion |
- 📝 조이스틱이 연결되면 키보드의 숫자 키만 바인딩됩니다.
📌 달리기 — 로봇이 달리도록 명령하기
- 경로:
"Walk" 탭 --> "Gait select" 그룹 박스 --> "Running" 버튼또는 키보드 버튼5를 누르세요 - 로봇은 빠르고 민첩한 동작을 수행합니다.
- 📝 달리기로 전환하기 전에 현재 자세와 보행에 따라 STANCE 자세로 전환해야 할 수 있습니다.
| 🕹️ Joystick | Command | Keyboard key | Robot Action |
|---|---|---|---|
| L Stick | Forward / Backward | W / S | Go Forward / Backward |
| L Stick | Left / Right | Q / E | Go Left / Right |
| R Stick | Forward / Backward | ||
| R Stick | Left / Right | A / D | Turn Left / Right |
| Shift | Full speed of motion |
- 📝 조이스틱이 연결되면 키보드의 숫자 키만 바인딩됩니다.
📌 Wave 걷기 — 로봇이 부드럽게 걷도록 명령하기
- 경로:
"Walk" 탭 --> "Gait select" 그룹 박스 --> "Wave" 버튼 - 로봇은 Wave 보행 패턴으로 부드럽게 걷습니다.
| 🕹️ Joystick | Command | Keyboard key | Robot Action |
|---|---|---|---|
| L Stick | Forward / Backward | W / S | Go Forward / Backward |
| L Stick | Left / Right | Q / E | Go Left / Right |
| R Stick | Forward / Backward | Pitch Forward / Backward | |
| R Stick | Left / Right | A / D | Turn Left / Right |
| Shift | Full speed of motion |
- 📝 조이스틱이 연결되면 키보드의 숫자 키만 바인딩됩니다.
📌 조준 — 로봇을 목표물에 조준하도록 명령하기
- 경로:
"Walk" 탭 --> "Gait select" 그룹 박스 --> "Aiming" 버튼 - 이 모드를 사용하여 로봇을 특정 목표물이나 방향으로 정확하게 조준합니다.
| 🕹️ Joystick | Command | Keyboard key | Robot Action |
|---|---|---|---|
| L Stick | Forward / Backward | W / S | Nose up / down |
| L Stick | Left / Right | Q / E | |
| R Stick | Forward / Backward | ||
| R Stick | Left / Right | A / D | Turn Left / Right |
| Shift | Full speed of motion |
-📝 조이스틱이 연결되면 키보드의 숫자 키만 바인딩됩니다.
📌 RL-Trot — 로봇이 RL-Trot 하도록 명령하기
- 경로:
"Walk" 탭 --> "Gait select" 그룹 박스 --> "RL-Trot" 버튼또는 키보드 버튼R를 누르세요 - 이 모드는 강화 학습 정책으로 생성된 Trot 보행을 활성화합니다. 로봇은 RL 기반 걷기 보행으로 전환되고 이후 사용자 명령에 응답합니다.
| 🕹️ Joystick | Command | Keyboard key | Robot Action |
|---|---|---|---|
| L Stick | Forward / Backward | W / S | Go Forward / Backward |
| L Stick | Left / Right | Q / E | Go Left / Right |
| R Stick | Forward / Backward | Pitch Forward / Backward | |
| R Stick | Left / Right | A / D | Turn Left / Right |
| Shift | Full speed of motion |
- 📝 조이스틱이 연결되면 키보드의 숫자 키만 바인딩됩니다.
📌 RL-Pronk — 로봇이 RL-Pronk 하도록 명령하기
- 경로:
"Walk" 탭 --> "Gait select" 그룹 박스 --> "RL-Pronk" 버튼또는 키보드 버튼F를 누르세요 - 이 모드는 강화 학습 정책으로 생성된 프롱크 보행을 활성화합니다. 로봇은 RL 기반 프롱크 보행으로 전환되고 이후 사용자 명령에 응답합니다.
| 🕹️ Joystick | Command | Keyboard key | Robot Action |
|---|---|---|---|
| L Stick | Forward / Backward | W / S | Go Forward / Backward |
| L Stick | Left / Right | Q / E | Go Left / Right |
| R Stick | Forward / Backward | Pitch Forward / Backward | |
| R Stick | Left / Right | A / D | Turn Left / Right |
| Shift | Full speed of motion |
- 📝 조이스틱이 연결되면 키보드의 숫자 키만 바인딩됩니다.
📌 Sit — 로봇을 앉히도록 명령하기
- 경로:
"Walk" 탭 --> "Gait select" 그룹 박스 --> "Sit" 버튼또는 키보드 버튼1를 누르세요 - 로봇이 부드럽게 앉은 자세로 전환하도록 명령합니다.
- 📝 현재 자세에 따라 앉은 자세로 전환하는 데 몇 초가 걸릴 수 있습니다.
🤖 실제 로봇
이 섹션에서는 실제 RBQ 로봇을 작동하는 방법을 설명합니다.
📖 자세한 작동 단계는 작동 가이드를 참조하세요
1. 로봇에 연결하기
PC를 로봇의 Wi-Fi에 연결합니다.
📝 Wi-Fi SSID:
RBQ_xxxx.
2. GUI 실행 및 로봇 제어 설정
bin 디렉토리에서 GUI를 시작합니다:
.bin/GUIConnect 버튼을 클릭합니다.
- 성공하면
연결 표시등이 Robot Connected 텍스트와 초록색으로 변경됩니다.
- 성공하면
자동 시작 버튼을 클릭합니다.
- 성공하면
제어 표시등이 초록색으로 변경되어 로봇이 성공적으로 활성화되었고 이제 작동 준비가 되었음을 나타냅니다.
- 성공하면
3. 명령은 시뮬레이션과 정확히 동일합니다
- 📝 먼저 시뮬레이터에서 로봇에 명령하는 연습을 강력히 권장합니다.
🚀 로봇에 애플리케이션(바이너리) 배포하기
- 개발 PC에서 다음 명령어를 실행하여 로봇에 바이너리를 배포합니다:
참고: 인자:
--help: 도움말 메시지를 표시하고 종료합니다.--scripts: 새 스크립트 배포
bash scripts/deploy.bashSSH 비밀번호를 입력하라는 메시지가 표시됩니다.
- 비밀번호: 담당자에게 SSH 비밀번호를 문의하세요.
- ⚠️ 중요:
deploy.bash가 완료되면 로봇을 껐다 켜서 새로 배포된 바이너리로 실행합니다.
