DanielePucci / gazebo_yarp_plugins

Gazebo plugin to interface GAZEBO with YARP.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

gazebo_yarp_plugins

Build Status

Plugins for exposing Yarp interfaces on Gazebo simulator models.

Installation

Dependencies

For using Yarp with the Gazebo simulator, you should install:

At the moment (26/11/13) you can have issues in running yarp compiled from source. If you are using Ubuntu 13.04 you will have to face some problems due to the new multiarch support. Have a look here why ld will not find yarp in /usr/local/lib/x86_64-linux-gnu The solution is to manually add /usr/local/lib/x86_64-linux-gnu in the config file /etc/ld.so.conf.d/x86_64-linux-gnu.conf and do sudo ldconfig.

###Compile time dependencies For compiling gazebo_yarp_plugins you need the headers for the following libraries:

For example on Ubuntu you can install them with the following command:

sudo apt-get install libtinyxml-dev libboost-system-dev

On OS X you can instead use brew:

brew install tinyxml boost

Operating systems support

Linux and OS X are currently supported by Gazebo. OS X support in Gazebo is still experimental, and there could be problems.

Compilation

You get the gazebo_yarp_plugins source code from this git repository repository (if you do not have git on your computer, follow this guide to install it)

git clone https://github.com/robotology/gazebo_yarp_plugins.git

This will create a gazebo_yarp_plugins directory with all the source code. You can enter this directory:

cd gazebo_yarp_plugins

You can then create a build directory inside it to hold all the compiled files:

mkdir build

You can use CMake to generate the necessary file for the compilation, and compile gazebo_yarp_plugins using make:

cd build
cmake ../
make

To notify Gazebo of the new plugins compiled, it is necessary to modify the GAZEBO_PLUGIN_PATH enviroment variable:

export GAZEBO_PLUGIN_PATH=${GAZEBO_PLUGIN_PATH}:/path/to/gazebo_yarp_plugins/build

Where "/path/to/gazebo_yarp_plugins/build" is the path on your computer where you located the build directory. To avoid having to modify this enviroment variable each time, you can place this command in the .bashrc file in your home directory.

Setting Initial Configuration for a Kinematic Chain:

One of the tags of the plugin is:

<initialConfiguration></initialConfiguration>

that can be used to set an initial configuration for a particular kinematic chain. Suppose that you want to set the initial configuration for the left_arm of COMAN, if it has 5 DOFs so you will write something like:

<plugin name="coman_yarp_gazebo_plugin_left_arm" filename="libgazebo_yarp_controlboard.so">
	 <yarpConfigurationFile>model://coman_urdf/conf/coman/coman_gazebo_left_arm.ini</yarpConfigurationFile>
	 <initialConfiguration>0.0 0.17 0.0 0.0 0.0</initialConfiguration>
</plugin>

inside your world file. Notice that the configuration is specified in RADIANTS.

Usage

To use the gazebo_yarp_plugins you can try to use a Yarp-enabled Gazebo model of a robot. Currently two robot support gazebo_yarp_plugins: Coman and iCub.

Coman

To use Coman in Gazebo, please follow the instructions on gazebo_yarp_plugins wiki

iCub

To use iCub in Gazebo, please follow the instruction in the icub_gazebo repository

Design

More information on the internal structure of gazebo_yarp_plugins is available in this wiki page.

Contributing

If you would like to contribute to the development of gazebo_yarp_plugins, please get in contact with the development team using GitHub issues.

About

Gazebo plugin to interface GAZEBO with YARP.


Languages

Language:C++ 100.0%