ergocub-software¶
Main collector of ergoCub specific SW
[!important] Since: - icub-tech-iit/ergocub-software!356
the naming convention for the URDF models has changed.
The models with the old names (with the suffix
V1_X) are kept in the repository but are deprecated, not maintained or tested, they will be removed in the 2026.02 distro release (around the end of Feb 2026), so please update your configuration files/sdf files in order to use the models with theSN00Xsuffix.
Installation¶
Dependencies¶
Before installing ergocub-software, please be sure that you've installed YARP 3.12.0 or higher on your machine.
Compiling from source¶
For installing it just:
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=<install-prefix> ..
make
(make install)
ergocub for Gazebo Classic simulation model needs a gazebo-yarp-plugins latest master.
In order to use the model, the following env variables must be configured:
# ergoCub model in YARP
export YARP_DATA_DIRS=${YARP_DATA_DIRS}:<install-prefix>/share/ergoCub
# ergoCub model in Gazebo
export GAZEBO_MODEL_PATH=${GAZEBO_MODEL_PATH}:<install-prefix>/share/ergoCub/robots
export GAZEBO_MODEL_PATH=${GAZEBO_MODEL_PATH}:<install-prefix>/share/
In order to make the device couplingXCubHandMk5 detectable, add <installation_path>/share/yarp to the YARP_DATA_DIRS environment variable of the system.
Alternatively, if YARP has been installed using the robotology-superbuild, it is possible to use <directory-where-you-downloaded-robotology-superbuild>/build/install as the <installation_path>.
Use conda binary packages¶
This repository is packaged as ergocub-software in the conda-forge conda channel, see https://anaconda.org/conda-forge/ergocub-software and conda-forge/ergocub-software-feedstock .
To create an environment with it, just add it during the environment creation as any other conda package, for example:
conda create -n ergocubenv -c conda-forge ergocub-software
If you only need to use the ergoCub URDF models and you do not want to install the full dependencies of the ergocub-software (that include YARP and OpenCV), you can also install the lightweight dependency free package ergocub-models:
conda create -n ergocubenv -c conda-forge ergocub-models
The ergocub-software package depends on ergocub-models, so if you need both you can just install ergocub-software.
Run Whole-body-dynamics¶
Currently whole-body-dynamics does not run along with ergoCubGazeboSN001. To start it please run the following command in a console once yarpserver and
the robot has been placed in gazebo
yarprobotinterface --config conf/launch_wholebodydynamics_ecub.xml
Usage with gz-sim¶
For using the models stored in this repository in gz-sim, it is needed a world file that imports these plugins:
<plugin filename="gz-sim-forcetorque-system" name="gz::sim::systems::ForceTorque"/>
<plugin filename="gz-sim-imu-system" name="gz::sim::systems::Imu"/>
<plugin filename="gz-sim-scene-broadcaster-system" name="gz::sim::systems::SceneBroadcaster"/>
<plugin filename="gz-sim-sensors-system" name="gz::sim::systems::Sensors"/>
URDF generation¶
This repository hosts the configuration files for generating ergoCub urdf. To generate the URDF, you need to have access to the cad-mechanics repo (that is currently private, if you need access ask it to the ergocub-software mantainer) and install the following repos and software:
* You need to install the version of Creo required by cad-mechanics.
* You need to install the repos that contain the CAD models, i.e. cad-libraries (see https://github.com/icub-tech-iit/cad-libraries/wiki/Configure-PTC-Creo-with-cad-libraries) and cad-mechanics icub-tech-iit/cad-mechanics.
* You need to install creo2urdf following the README in icub-tech-iit/creo2urdf, either from source or using the binary available for each release.
[!NOTE] For generating ergoCub URDF
creo2urdfv0.5.14 or greater is needed
The CAD files used to generate the URDF models have been prepare according to the procedure described in https://github.com/icub-tech-iit/cad-libraries/wiki/Prepare-PTC-Creo-Mechanism-for-URDF .
You can find there the relative documentation on how write those configuration files, and more details in the README of the following folders:
* urdf/creo2urdf/data/ergocubSN000
* urdf/creo2urdf/data/ergocubSN001
* urdf/creo2urdf/data/ergocubSN003
Maintainers¶
This repository is maintained by:
| @Nicogene |