User Tools

Site Tools


DRC Hubo Hokuyo Scan

Author: Blake Hament Email:
Date: Last modified on 11/01/16
Keywords: tutorial, Hubo, Hokuyo, laser, scan, ROS

This tutorial will walk you through the commands necessary to capture a 3D depth scan of the environment using the Hokuyo sensor on the DRC Hubo 2 platform.

Motivation and Audience

This tutorial will assist anyone interested in operating and programming the DRC Hubo 2 platform. The DRC Hubo 2 is equipped with 2 RGB cameras and a laser rangefinder for vision. Data from these sensors is processed via an onboard computer dedicated to vision computations. This data is accessed via a main control computer that interfaces with all the computers onboard Hubo. This tutorial will walk the reader through the commands necessary to obtain a depth scan using the Hokuyo. These commands are executed on the vision computer and the main control computer. I assume the reader has the following background and interests:

  • Basic skills in CPP and bash coding on Linux systems
  • Interest in engineering, autonomous systems, ROS, and computer vision

The rest of the tutorial is organized as follows:

  1. Parts List and Sources
  2. Theory of Operation
  3. Operation
  4. Final Words

Parts List and Sources

This DRC Hubo 2 is a state-of-the-art humanoid platform used in robotics research labs across the globe. It was developed by Dr. Jun Ho Oh's team at Korea Advanced Institute for Science and Technology (KAIST). Depth scans are performed using the Hokuyo UTM-30LX-01.

Theory of Operation

Image from DOI: 10.1016/j.robot.2015.09.030

In the image above, the red lines represent individual depth scans performed by the robot's laser rangefinder. The laser rangefinder is tilted at various angles to sweep the environment with 2D scans, and then the 2D scans are combined into a cohesive 3D point cloud. Instead of a wheeled vehicle, our robot platform will be the DRC Hubo 2. The specific laser range-finding device used is the Hokuyo UTM-30LX-01.


Vision Computer

First, login to the Vision Computer located in Hubo's upper torso.

Login: root
PW: control

You may need to adjust the display resolution using xrandr

$ xrandr

Next, source your terminal window and start a ROS core.

$ cd catkin_ws/devel/
$ source setup.bash
$ cd ..
$ roscore

Open a new terminal, source it, then start the laser_scan ptcloud node

$ cd catkin_ws/devel/
$ source setup.bash
$ cd ..
$ rosrun laser_scan ptcloud

Open a new terminal, source it, then execute laser_run

$ cd catkin_ws/devel/
$ source setup.bash
$ cd ..
$ ./laser_run

Finally, start qtcreator

$ cd /home/vision/Qt/Tools/QtCreator/bin
$ ./qtcreator

In the qt creator window, choose “default(last session)”. Next, rightclick “DRCHuboVisionServer”, then click “run”

Control/Client Computer

Now on the Client CPU, open a new terminal and start a roscore.

Next open a new terminal window, source it, and run qt creator.

$ ./qtcreator

Click session, default.

Rightclick “DRCHuboClient”, click “Kill All”, then go to home, and then “run all”

To update the depth scans at the bottom of the Hubo GUI, check the “Point Cloud (3D)” box, then click “3D Pointcloud”

Final Words

This tutorial provides an overview for performing 3D depth scans using the Hubo platform. It is specific to the Hubo platform at UNLV's Drones and Autonomous Systems Lab as of fall 2016. Further work could be done to generalize this procedure so that it works with different software configurations, as might be encountered on Hubo platforms at other universities.

For questions, clarifications, etc, email:

drc_hubo_hokuyo_scan.txt · Last modified: 2017/04/04 08:59 by blakehament