How to install graspPlugin for Choreonoid

This document is an installation guide for the graspPlugin for Choreonoid, which is used during robotic manipulations of a dual-arm robot in “The Development Project for Intelligent Technologies for Next-Generation Robots.” The graspPlugin for Choreonoid was developed as a plug-in for Choreonoid (an integrated software for choreographing robotic motions), with Hand grasp planning, Arm Trajectory Planning, etc. conforming to OpenRTM standards.

Reference materials

This document targets users with a basic knowledge of RT Middleware (RTM) and RT Components (RTC). Refer to the link below for details on RTM and RTC.

OpenRTM-aist Official Website:
http://www.openrtm.org/openrtm/ja

Furthermore, refer to all the documents listed below for details on the “Demo” using the dual-arm robot, HiroNX.

  • OpenVGR
    • Please read the introduction.
    • Operating procedure.
    • Functional specification.
  • OpenVGR Coordinate transformation tool (OpenVGRextra)
    • Please read the introduction.
    • How to use the cloth-marker detection program.
    • How to use the coordinate transformation matrix calculation program.
  • Demo manual for the dual-arm robot
  • Instruction manual for the use of HiroNXInterface

Request for users downloading the plug-in

The graspPlugin for Choreonoid is composed of multiple plug-ins for Choreonoid. One of them is the trajectory planning plug-in that is used in planning a collision-free trajectory. Professor Claude Latombe has kindly allowed us to port the Motion Planning Kit developed at Stanford University as a plug-in for Choreonoid. We request that users who download the graspPlugin for Choreonoid send their names and affiliated organizations to the contact address mentioned at the end of this document. This would facilitate us in sending information on users using the Motion Planning Kit to Professor Latombe.

System Specification

Essential software

This installation guide assumes that the computer's operating system is Ubuntu 10.04LTS. The software versions to be installed are given below.

graspPlugin for Choreonoid

Figure 1 shows a broad overview of the graspPlugin for Choreonoid configuration.

graspPlugin_for_Choreonoid_overview_0.png
Figure 1. graspPlugin for Choreonoid

graspPlugin for Choreonoid is a set of plug-ins that provide grasp Planning, Trajectory planning, and Object manipulation planning functionalities, among others. The plug-ins included in this package are listed below.

  • Vision Trigger Plug-in: Receives information from visual systems through the OpenRTM interface.
  • Grasp Planning Plug-in: Provides the functionality for performing grasp planning and the ability to share it with other plug-ins.
  • Trajectory Planning Plug-in: Plans a collision-free robot motion trajectory.
  • Gripper Manipulation Plug-in: Plans pick-and-place operations by assuming parallel grippers.
  • Robot Interface Plug-in: Sends information such as the “joint angle control order” to the dual-arm robot, HiroNX, through the OpenRTM Interface.

Installing OpenRTM

Install OpenRTM-aist 1.0.0-RELEASE on Ubuntu 10.04 using the batch setup script. If you have already completed the installation of OpenRTM, you can skip this section and proceed to the next section.

Download the batch setup script, pkg_install_ubuntu.sh for Ubuntu, from the OpenRTM-aist-1.0.0-RELEASE website ((http://www.openrtm.org/openrtm/ja/node/849).

(Note: The file is listed as “pkg_install_ubuntu.sh” on the website, but the name actually changes to “pkg_install_ubuntu100.sh” when downloaded.)

When not using a browser, the file can be downloaded via wget as follows: (from here on, the lines inside the text box starting with a “%” represent commands entered at the computer terminal; however, do not include the “%” at the beginning of your entries at the computer terminal.)

 % wget http://openrtm.org/svnroot/OpenRTM-aist/trunk/OpenRTM-aist/build/pkg_install100_ubuntu.sh

The necessary packages are automatically installed when the following script is executed at the command line.

 % sudo sh pkg_install100_ubuntu.sh

Prompts, such as those described below, appear many times during execution. Respond with a “y” to all such prompts and continue.

Example 1

 No repository entry for OpenRTM-aist is configured in your system.
 repository entry for OpenrRTM-aist:
    deb http://www.openrtm.de/pub/Linux/ubuntu/ lucid main
 Do

Example 2

 After this operation, XXXMB of additional disk space will be used.
 Do you want to continue [Y/n]? 

Example 3

 WARNING: The following packages cannot be authenticated!
   xxxx-xxx
 Install these packages without verification [y/N]? 

When prompted for “[Y/n],” pressing the Enter key would be considered a “y” and installation would proceed. However, when prompted for “[y/N],” unless the “y” key is explicitly pressed and followed by the Enter key, the entry would be considered an “n” and the installation would be aborted. If the installation is aborted accidentally, execute the pkg_install_ubuntu.sh package once again.

Building Choreonoid

The installation procedure for Choreonoid (integrated software for choreographing robotic motions) is outlined below. In this section, only Choreonoid is built and executed, instead of installing the graspPlugin in one shot. The installation directory is taken as “~/src/choreonoid-1.0.0.”

Acquiring the source for the build

Download the source package file “http://choreonoid.org/_downloads/choreonoid-1.0.0.zip” from the official Choreonoid site (http://choreonoid.org/en/). Unzip and extract the files by specifying “~/src” as the destination directory to create the “~/src/choreonoid-1.0.0” directory for the extracted files.

Once the computer has booted, make the “~/src/choreonoid-1.0.0” directory your current directory.

 % cd choreonoid-1.0.0 

Installing the required packages

Execute the batch installation script that is available at choreonoid /misc/script.

 % cd choreonoid/misc/script
 % sudo ./install-requisities-ubuntu.sh
  (an omittion)
 Need to get xxxMB of archives.
 After this operation, xxxMB of additional disk space will be used.
 Do you want to continue [Y/n]? 

A large volume of packages will be installed. Re-execute the script if a failure occurs prior to completion.

 % sudo apt-get update
 % sudo ./install-requisities-ubuntu.sh

Installation of libgstreamermm-0.10-dev and libqt4-phonon-dev is also necessary, so enter them manually.

 % sudo apt-get install libgstreamermm-0.10-dev libqt4-phonon-dev 

Once this is completed, return to the Choreonoid directory.

 % cd ../.. 

Building Choreonoid using ccmake

Invoke ccmake to generate the Makefile.

 % ccmake . 

ccmake displays only “EMPTY CACHE” on its first launch.

emptycache.png
Figure 2. ccmake: EMPTY CACHE

On pressing the “c” key to configure, a menu showing the key and values should be displayed within a few seconds.

configure1.png
Figure 3. ccmake: configure

On pressing “c” again, a new menu item will be displayed in the lower section of the screen displaying the message, “Press [g] to generate and exit.”

configure2.png
Figure 4. ccmake: generate and exit

Press “g” to exit ccmake. The Makefile will be generated by this “generate and exit” operation. Execute make and build Choreonoid.

 % make 

The execution time will vary depending on the PC used.

Invoking Choreonoid

Once the execution of make is completed, execute Choreonoid.

 % bin/choreonoid 

If a startup screen like the one shown below appears, Choreonoid has been built successfully.

Choreonoid_2.png
Figure 5. Choreonoid startup screen

Building graspPlugin

The procedure for installing graspPlugin on Choreonoid is given below.

Installing Subversion

Since subversion is required for the installation of graspPlugin, install the same, if it is not already installed.

 % sudo apt-get install subversion 

graspPlugin source check out

Use subversion to check out and extract the graspPlugin source under the “extplugin” directory of “~/src/choreonoid-1.0.0.”

 % cd ~/src/choreonoid-1.0.0/extplugin
 % svn checkout http://grasp-plugin.googlecode.com/svn/trunk/graspPlugin

Installing essential packages

Execute the graspPlugin installation script (a user password is required).

 % ./graspPlugin/Grasp/install-requisities-ubuntu.sh 

Furthermore, the wx-common package is also required.

 % sudo apt-get install wx-common 

If the wx-common package is not present, the configure step of ccmake will fail with a “wxWidgets_wxrc_EXECUTABLE NOT FOUND” message.

Building graspPlugin using ccmake

In order to install graspPlugin as a plug-in, change Choreonoid’s build settings using ccmake.

 % cd ~/src/choreonoid-1.0.0
 % ccmake . 

To build graspPlugin, it is necessary to edit the items using ccmake.
In ccmake, the items displayed on the left half of the screen with a white background are the keys, while the items displayed on the right half with a black background are the values for those keys. Use the “UP” and “DOWN” arrow keys to move the cursor to the desired item and press the Enter key to edit the desired value. After modifying the value, press the Enter key again. This releases the cursor to move UP and DOWN again.

Pressing the “c” key twice will configure and create two items: GRASP_PLUGINS and GRASP_ROBOT_MODEL_PLUGINS.

ccmake.png
Figure 6. ccmake: Editing the keys

Set the following values to the respective items:


Key Value
GRASP_PLUGINS Grasp;PRM;GripperManipulation;VisionTrigger;RobotInterface
GRASP_ROBOT_MODEL_PLUGINS HIRO/Plug-in

Once the values have been edited, press “c” to configure. Next, press the “g” key to generate the makefile and exit. Then, execute make to build Choreonoid and the plug-in.
 % make 

Execution

Execute Choreonoid.

 % bin/choreonoid 

If a screen like the one below is displayed, the execution is successful.

Choreonoid.png
Fig 7. graspPlugin execution screen

In comparison to the build using Choreonoid alone, the toolbar now contains increased options due to the addition of graspPlugin. Furthermore, messages to the effect of “.... plug-in file being loaded” and “... plug-in being activated” are displayed in the message tab.