SkiROS—A Skill-Based Robot Control Platform on Top of ROS


The development of cognitive robots in ROS still lacks the support of some key components: a knowledge integration framework and a framework for autonomous mission execution. In this research chapter, we will discuss our skill-based platform SkiROS, that was developed on top of ROS in order to organize robot knowledge and its behavior. We will show how SkiROS offers the possibility to integrate different functionalities in form of skill ‘apps’ and how SkiROS offers services for integrating these skill-apps into a consistent workspace. Furthermore, we will show how these skill-apps can be automatically executed based on autonomous, goal-directed task planning. SkiROS helps the developers to program and port their high-level code over a heterogeneous range of robots, meanwhile the minimal Graphical User Interface (GUI) allows non-expert users to start and supervise the execution. As an application example, we present how SkiROS was used to vertically integrate a robot into the manufacturing system of PSA Peugeot-Citroën. We will discuss the characteristics of the SkiROS architecture which makes it not limited to the automotive industry but flexible enough to be used in other application areas as well. SkiROS has been developed on Ubuntu 14.04 LTS and ROS indigo and it can be downloaded at A demonstration video is also available at



  title = {Ski{ROS}—A Skill-Based Robot Control Platform on Top of {ROS}},
  author = {Rovida, Francesco and Crosby, Matthew and Holz, Dirk and Polydoros, Athanasios S and Gro{\ss}mann, Bjarne and Petrick, Ronald PA and Kr{\"u}ger, Volker},
  booktitle = {Robot Operating System (ROS)},
  pages = {121--160},
  year = {2017},
  publisher = {Springer},
  public = {yes}