Code
YARP
YARP is a library and toolkit for communication and device interfaces, used on everything from humanoids to embedded devices.
iDynTree
iDynTree is a library of robots dynamics algorithms for control, estimation and simulation.
iDynTree is specifically designed for free-floating robots, but it is possible to use it also with fixed-base robots.
iDynTree is written in C++ language, but thanks to SWIG it is possible to use the iDynTree algorithms in several other languages. Support and documentation is provided in particular for C++, Matlab, Python and Lua.
whole-body-controllers
The codebase whole-body-controllers contains Simulink-based whole-body controllers
developed to control the iCub humanoid robot. It can be imagined as a starting point and a support repository for a user that intends to develop a new Simulink controller (not necessarily for the iCub robot) in within the framework of the robotology organisation. It is worth noting that:
-
The controllers stored in this repository are an overview of the possibile control frameworks that can be implemented using the
robotology
software infrastructure. Also, the repository contains a library of configuration and utility Matlab functions to design simulations with Gazebo simulator and on the real robot iCub. -
The robot dynamics and kinematics is computed run-time by means of WBToolbox, a Simulink library that wraps iDyntree. For more information on iDyntree library, see also this README.
-
The Simulink models implement different control strategies both for fixed-base and for floating-base robots. They space from
momentum-based
torque control toinverse-kinematics-based
position control. Have a look at the controllers folder for more details.
gazebo-yarp-plugins
The gazebo-yarp-plugins are a set of Gazebo plugins that expose YARP interfaces for robot simulated in Gazebo. The main design objective for the gazebo-yarp-plugins is to provide the exact same interfaces that can be found in real world YARP-powered robot in the Gazebo simulation, to ensure that YARP-based software can run with no modifications both in simulation and on the real robots.