Skip to content

📚 Introduction ​

Welcome to the RBQ simulation, command, and deploy/update manual

This manual provides a comprehensive guide on how to simulate the RBQ robot, command it, and deploy your own algorithms to the real robot.

✅ đŸ–Ĩī¸ Ready-to-use Simulator and Graphical User Interface for developers ​

  • The RBQ robot can be simulated accurately using MuJoCo: "A fast and accurate physics engine suitable for advanced robotics simulation."

    📝 Developers can modify the simulation environment "playground" by editing the file: resources/model/environment.xml

  • The RBQ GUI is designed to provide users with an intuitive interface for commanding and monitoring the robot.

    • It provides visual feedback of the robot status, sensor states, and allows both keyboard and joystick inputs for commands.

GUI Overview ​

  • This section explains how to use the RBQ GUI, including its key features and interface layout.

📌 Top Panel ​

The top panel provides the core functionality for connecting to the robot, initializing its pose, and checking motor status. It also includes a button for emergency stops and indicators for battery voltage and IMU sensor status.

  • Connection Status and Buttons: Shows whether the robot is connected. You can connect or disconnect using these buttons.

  • Auto Start Robot button: Automatically initiates the robot [Motor Check --> Initialize Pose --> Control Start] sequentially and prepares the system for control.

  • Motor Check / Initialize Pose / Control Start buttons: Perform key startup actions separately. Although it's recommended to use the Auto Start Robot button instead.
    📝 In simulation: only Control Start shows green. Meanwhile, on the real robot: all three button indicators turn green when ready.

  • EMERGENCY button: Immediately halts all robot actions so the robot will softly fall down.

    • To resume operation after an emergency stop, press the Stance button from the Gait select group box.

      📝 The system enters automatic RECOVERY mode (yellow light) before transitioning to stance motion (green light).

📌 Central Panel ​

  • The central panel includes tabs with buttons for sending various commands to the robot.

    📝 On a real robot, additional Joint, Firmware, Power tabs are available, although it is not recommended to use them.

  • [ Walk tab ] commands the robot's walking behavior and transitions between gaits.

    ✅ Button ActionSitStanceWalkStairsRunning
    âŒ¨ī¸ Keyboard key12345

📌 3D Panel ​

  • This panel displays a 3D rendered digital twin of the current posture of the connected robot.

đŸ“Ļ Installation ​

  • This section explains how to install and set up the RBQ robot simulation and development environment from scratch.

đŸ’ģ Requirements ​

To run the RBQ simulation and deployment environment smoothly, the following requirements are recommended:

  • OS: Ubuntu 22.04 (x86)

    GUI Connect

  • Minimum PC specs:

    • CPU: Intel Core i7 - 12th Gen
    • RAM: 16 GB
    • Storage: 25 GB
  • Control Devices

    • Keyboard: W, A, S, D, Q, E, [1-5] keys
    • Joystick: Logitech Wireless Gamepad F710 (Recommended)

    GUI Connect

đŸ“Ĩ 1. Download the RBQ Repository ​

  • Clone the repository using the following command:
bash
git clone https://github.com/RainbowRobotics/RBQ.git

đŸ› ī¸ 2. Set up Environment ​

  • Install necessary libraries using the following command:
bash
bash scripts/setup.bash

â–ļī¸ Simulation ​

  • Start the RBQ Control Modules, MuJoCo simulator, and GUI all together with the help of a script.
bash
bash scripts/sim.bash
  • If prompted, type your user password in the newly opened CLI terminals to start the processes.

🔗 Initialize — Connect and Start the Simulated Robot ​

  • In the RBQ GUI, click the Connect button to establish the connection.

    • If successful, the connection indicator will change to Simulator Connected text and color blue.
  • In the RBQ GUI, click the Auto Start Robot button to initiate control.

    • If successful, the control indicator will change to color green.

📌 Stance — Command the Robot to Stand Up ​

  • Path: "Walk" tab --> "Gait select" group-box --> "Stance" button or simply press keyboard button 2
  • Once commanded, the robot will start moving into a standing posture. After it is done, it will respond to further commands.
    • 📝 It might take a second to transition into a standing posture, depending on the current posture.
đŸ•šī¸ JoystickCommandKeyboard keyRobot Action
L StickForward / BackwardW / SNose up / down
L StickLeft / RightQ / ERoll Left / Right
R StickForward / BackwardHeight up / down
R StickLeft / RightA / DTurn Left / Right
ShiftFull range of motion
  • 📝 If a gamepad is detected, only the number keys of the keyboard are bound.

📌 Walk — Command the Robot to Walk ​

  • Path: "Walk" tab --> "Gait select" group-box --> "Walk" button or simply press keyboard button 3
  • Once commanded, the robot will transition to a walking gait. After it is done, it will respond to further commands.
đŸ•šī¸ JoystickCommandKeyboard keyRobot Action
L StickForward / BackwardW / SGo Forward / Backward
L StickLeft / RightQ / EGo Left / Right
R StickForward / BackwardPitch Forward / Backward
R StickLeft / RightA / DTurn Left / Right
ShiftFull speed of motion
  • 📝 If a gamepad is detected, only the number keys of the keyboard are bound.

📌 Stairs — Command the Robot to Climb Stairs ​

  • Path: "Walk" tab --> "Gait select" group-box --> "Stairs" button or simply press keyboard button 4
  • The robot utilizes its vision capabilities to climb stairs.
đŸ•šī¸ JoystickCommandKeyboard keyRobot Action
L StickForward / BackwardW / SGo Forward / Backward
L StickLeft / RightQ / EGo Left / Right
R StickForward / Backward
R StickLeft / RightA / DTurn Left / Right
ShiftFull speed of motion
  • 📝 If a gamepad is detected, only the number keys of the keyboard are bound.

📌 Running — Command the Robot to Run ​

  • Path: "Walk" tab --> "Gait select" group-box --> "Run" button or simply press keyboard button 5
  • The robot performs rapid and agile movements.
    • 📝 Before transitioning into RUN, transitioning to the STANCE posture might be necessary, depending on the current posture and gait.
đŸ•šī¸ JoystickCommandKeyboard keyRobot Action
L StickForward / BackwardW / SGo Forward / Backward
L StickLeft / RightQ / EGo Left / Right
R StickForward / Backward
R StickLeft / RightA / DTurn Left / Right
ShiftFull speed of motion
  • 📝 If a gamepad is detected, only the number keys of the keyboard are bound.

📌 Wave Walking — Command the Robot to Walk Smoothly ​

  • Path: "Walk" tab --> "Gait select" group-box --> "Wave" button
  • The robot walks smoothly with a wave gait pattern.
đŸ•šī¸ JoystickCommandKeyboard keyRobot Action
L StickForward / BackwardW / SGo Forward / Backward
L StickLeft / RightQ / EGo Left / Right
R StickForward / BackwardPitch Forward / Backward
R StickLeft / RightA / DTurn Left / Right
ShiftFull speed of motion
  • 📝 If a gamepad is detected, only the number keys of the keyboard are bound.

📌 Aim — Command the Robot to Aim at a Target ​

  • Path: "Walk" tab --> "Gait select" group-box --> "Aiming" button
  • Use this mode to aim the robot precisely toward a specific target or direction.
đŸ•šī¸ JoystickCommandKeyboard keyRobot Action
L StickForward / BackwardW / SNose up / down
L StickLeft / RightQ / E
R StickForward / Backward
R StickLeft / RightA / DTurn Left / Right
ShiftFull speed of motion
  • 📝 If a gamepad is detected, only the number keys of the keyboard are bound.

📌 Sit — Command the Robot to Sit Down ​

  • Path: "Walk" tab --> "Gait select" group-box --> "Sit" button or simply press keyboard button 1
  • Command the robot to smoothly transition into a sitting posture.
    • 📝 It might take a second to transition into a sitting posture, depending on the current posture.

🤖 Real Robot ​

This section explains how to operate the real RBQ robot.

📖 For detailed operation steps, refer to the Operation Guide

1. Connect to the Robot ​

  • Connect your PC to the robot's Wi-Fi.

    📝 Wi-Fi SSID: RBQ_xxxx.

2. Launch the GUI and Set Robot Control ​

Start the GUI in the bin directory:

bash
.bin/GUI
  • Click the Connect button.

    • If successful, the connection indicator will change to Robot Connected text and color green.
  • Click the Auto Start button.

    • If successful, the control indicator will change to color green, indicating that the robot has been successfully activated and is now ready for operation.

3. Commands are exactly the same as in simulation ​

  • 📝 It is strongly recommended to practice commanding the robot in the simulator first.

🚀 Deploy Applications (Binaries) to the Robot ​

  • Run the following command on your development PC to deploy binaries to the Robot:
bash
bash scripts/deploy.bash

You will be prompted for an SSH password.

  • Password: Please ask the person in charge for the SSH password.
  • âš ī¸ Important: Once deploy.bash has completed, restart the robot by turning it off and on to run with the newly deployed binaries.

This user manual is intended for RBQ users.