Author: Blake Hament Email: blakehament@gmail.com
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.
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:
The rest of the tutorial is organized as follows:
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.
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.
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”
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”
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: [email protected]