A Whole-Body Software Abstraction layer for Control Design of free-floating Mechanical Systems

  • Francesco Romano Istituto Italiano di Tecnologia http://orcid.org/0000-0001-5630-4992
  • Silvio Traversaro Istituto Italiano di Tecnologia
  • Daniele Pucci Istituto Italiano di Tecnologia
  • Francesco Nori Istituto Italiano di Tecnologia


In this paper, we propose a software abstraction layer to simplify the design and synthesis of whole-body controllers without making any preliminary assumptions on the control law to be implemented.
The main advantage of the proposed library is the decoupling of the control software from implementation details, which are related to the robotic platform.
Furthermore, the resulting code is more clean and concise than ad-hoc code, as it focuses only on the implementation of the control law.
In addition, we present a reference implementation of the abstraction layer together with a Simulink interface to provide support to Model-Driven based development.
We also show the implementation of a simple proportional-derivative plus gravity compensation control together with a more complex momentum-based bipedal balance controller.
Before concluding the paper we present an honest view of the lessons we have learnt during the development of the library, i.e. we report both good and bad design choices that have had a strong influence on the usability and maintainability of the library.