User Tools

Site Tools



Author: Dylan Wallace Email:
Date: Last modified on 11/11/16
Keywords: Humanoid, HUBO, Software

This tutorial is designed to teach DASL members about how to use some specific functions within the GUI, and to give an overview of what capabilities the GUI can provide for the user.

Public vs Private GUI

Due to DRC-HUBO's ongoing development and research, the full-fledged GUI and the most useful ALs are not provided to the public for use. Instead, a public version of the GUI was released with only limited ALs available to use. In this tutorial we will explain how to use both.

Private GUI

The private GUI is full of great features that allow teleoperation of HUBO helpful. There are 6 major tabs in the private GUI: Setting, Tutorial, Walking, Wheel, Joystick, and Car. Within this tutorial we will cover using the first 4.

Before using any of the tabs, it is useful to start these 4 ALs: Walkready, Omniwheel, Freewalking, and Manualmove.

Setting Tab

The picture above depicts the Setting tab of the private GUI. This tab is used to set the positions of DRC-HUBO's joints and allows the user to monitor the joints and the CAN bus.

In order to move a joint just select the joint, select the angle and time of movement, and the press “Move Joint”. Please note that joints can also be monitored with the joints section to the right of the GUI, explained in the last section of this private GUI tutorial.

Tutorial Tab

The picture above depicts the Tutorial tab of the private GUI. This tab is most important for its ability to control head scans.

In order to take a scan, enter the angle range that you would like to scan (negative value and positive value should be opposites, and this number is the range of the scan), enter the time of the scan, and then press the “Scan” button. Use Rviz in order to view the results of the scan, whether in reality or simulation. In order to home the head before scanning, or to move the head to a specific position, simply enter the value you desire and press the “GO TO” button.

Walking Tab

The picture above depicts the Walking tab of the private GUI. This tab is used to control DRC-HUBO in walking mode.

Before controlling HUBO in walking mode, use the “Walk Ready” button to put HUBO into Walk-Ready mode. Then, set the “Step length” (in meters) at the bottom (10 - 100 cm recommended). Next set the “Rot angle” (15 recommended). Finally, enter the “Step num”, and press the “AL SET Freewalking” button to initiate the walking sequence.

Wheel Tab

The picture above depicts the Wheel tab of the private GUI. This tab is used to control DRC-HUBO in wheel mode.

Before putting HUBO into wheel mode, first press the “WalkReady” button to put HUBO into Walk-ready mode. Then, press the “to Wheel” button to put HUBO in wheel mode. Now HUBO is ready to use in wheel mode. In order to put HUBO back into Walk-ready mode, simply press the “to Walk” button.

Joystick Tab

The picture above depicts the Joystick tab of the private GUI. This tab is used to control DRC-HUBO with a controller. HUBO can be controlled on wheels with the controller, and the arms of HUBO for manipulation.

In order to control HUBO in wheel mode with a controller, first follow the steps listed above for wheel mode. Next, turn the Logitech controller on and press the “Joystart” button to the right. Now, press the “Wheel Manual Move Start” button. Now HUBO can be moved manually with the controller, using one of the joysticks. If HUBO is desired to move in two directions at once, use both the joystick and the D-pad to do this. Optionally, you can change the code to use both joysticks instead.

In order to control the arm movements of HUBO, use the “One Hand” button (if in walking mode use the “One Hand Standing” button). Once this button is pressed, you can use the joysticks to control HUBO's arm. Use the Right joystick to keep the hand in place and move the arm around this position. Use the Left joystick to move the hand around in 3D space.. Use the D-pad to open and close the hand. Alternatively, the “RH open”/“LH open” and “RH close”/“LH close” buttons at the bottom can be used to open and close the hands.

Joints, Sensor Data, and Motion Visualization

The picture above depicts the part of the GUI used for monitoring joints positions, sensor data, and HUBO motions. These can be opened using the “Joints”, “Sensors”, and “Simulator” buttons to the left of the GUI.

The left side of this section is for visualizing joint positions, in reference angles or encoder ticks. The middle is used to track sensor data from the joints, IMU, FOG, and vision sensors. The right section is used to visualize HUBO's motions in a low-level simulation.

Public GUI

The public GUI has much less features than the private GUI, so as to limit what the public can do with HUBO. This version is available for the public to use in simulation, without a real robot. This version only includes the ability to take head scans, set joints, drive in wheel mode, do simple object grasping/manipulation and arm positioning. Below is a picture of the public GUI.

Pose Change

This section is used to put DRC-HUBO into different positions for use. These include the Home position, Walk-ready, and wheel mode. These can be achieved by pressing the respective buttons in the “Pose Change” section.

Head Control

This section is used to control DRC-HUBO's head position and to take head scans. This can be used in the same manner as the private GUI.

Wheel Control

This section can be used to drive DRC-HUBO to specific points while in wheel mode. This can be achieved by setting the position and rotation into the respective fields (X, Y, Z, and Angle), and then pressing the “Goto Point” button.

Object Picking

This section can be used to control the position of DRC-HUBO's arms for grasping/manipulation. Use the “Get Pos” button to get the current position of HUBO's hand. Use the “ready” button to put HUBO's arm into the Walk-ready position.

In order to move the hand to a desired position, set that position into the respective fields (X, Y, Z, and wrist rotation), and then press the “Set” button. To grasp an object press the “Grasp” button. To hold a position press the “Hold” button. To put the arm back to the previous position, press the “Back” button.

Final Words

This tutorial's objective was to teach the concepts behind utilizing the DRC-HUBO GUI. Complete operation instructions for utilizing DRC-HUBO through the GUI were provided. Once the concepts were conveyed the reader could successfully operate DRC-HUBO in simulation DRC-HUBO.

For questions, clarifications, etc, Email:

drc_hubo_gui_tutorial_dw.txt · Last modified: 2017/04/27 21:52 by dwallace