Journal of Physical Agents

Progress in RoboComp

Marco Antonio Gutiérrez Giraldo, Adrián Romero Garcés, Pablo Bustos García de Castro, Jesús Martínez Cruz



During the last six years the RoboComp robotics framework has been steadily growing in the number of software components, the variety of robots supported and in new solutions to the maintenance of large robotics software repositories. In this paper we present recent advances in the formal definition of the RoboComp component model and a new set of tools based on Domain Specific Languages that have been created to simplify the whole development cycle of the components. Moreover, a new robot simulation tool has been created providing perfect integration with RoboComp and better control over experiments than current existing simulators. Finally, the paper describes a working solution to the important problem of communications middleware independence, which allows users to decide which middleware the components will be compiled with. Our solution has been validated by the integration of Nerve, a novel middleware for critical robotics tasks, in RoboComp.


Robotics framework; Software engineering; Middleware; Performance; Robotics


J. He, X. Li and Z. Liu. “Component-based Software Engineering: the Need to Link Methods and their Theories.” Proc. of ICTAC 2005, Lecture Notes in Computer Science 3722, pp. 70-95, 2005.

L.J. Manso, P. Bachiller, P. Bustos, P. Nunez, R. Cintas and L. Calderita. “RoboComp: a Tool-based Robotics Framework”. In Proc. of Int. Conf. on Simulation, Modeling and Programming for Autonomous Robots (SIMPAR). Pages: 251-262. 2010.

M. Henning and M. Spruiell. “Distributed Programming with Ice”, ZeroC. 2009.

ROS open source community. “ROS: The meta-operating system for robots.” Available at 2011.

C. Schlegel, A. Steck, D. Brugali and A. Knoll “Design Abstraction and Proccesses in Robotics: From Code-Driven to Model-Driven Engineering” In 2nd International Conference on Simulation, Modeling and Programming for Autonomous Robots (SIMPAR) 2010.

R. W. Claus, N. Wang, D. C. Schmidt and C. ORyan, “Overview of the CORBA Component Model”. Component Based Software Engineering Putting the Pieces Together Pages: 1-16. 2011.

“Adaptive Communications Environment”∼schmidt/ACE-overview.html

N. Ando, S. Kurihara, G. Biggs, T. Sakamoto and H. Nakamoto. “Software Deployment Infrastructure for Component Based RT-Systems.” In Journal of Robotics and Mechatronics. Vol.23, no.3, pp. 350-359. 2011.

A. W. Brown “Model Driven Arquitecture: Principles and practice” Sofware and systems modeling Pages: 314-327. 2004.

Object Management Groups Robotic Technology component standard, version 1.0. Available at

D. C. Burnett, J. Carter, J. Barnett, M. Bodell, R. J. Auburn and R. Alkolkar “State Chart XML (SCXML): State Machine Notation for Control Abstraction”.

Object Management Group: Data Distribution Service for Real-time Systems (DDS), version 1.2, 2007.

Gerkey, B.P., Vaughan, R.T., Howard, A. “The Player/Stage Project: Tools for Multi-Robot and Distributed Sensor Systems.” In Proceedings of the 11th International Conference on Advanced Robotics. pp. 317-323, 2003.

Mart´ınez J, Romero-Garces A, Manso L, Bustos P “Improving a robotics framework with real-time and highperformance features.” Simulation, Modeling, and Programming for Autonomous Robots, Lecture Notes in Computer Science, vol. 6472, Springer, 2010; 263274.

Schlegel, C.: “Communication Patterns as Key Towards Component Interoperability” In Software Engineering for Experimental Robotics. STAR Series, vol. 30, pp.183210 (Springer, Heidelberg) 2007.

Cruz, J. M., Romero-Garces, A., Rubio, J. P. B., Robles, R. M. and Rubio, A. B., “A DDS-based middleware for quality-of-service and highperformance networked robotics.” Concurrency Computat.: Pract. Exper. doi: 10.1002/cpe.2816 2012.

PrismTech. OpenSplice DDS. Available at 2011.

H, Owen, and R. Goodman. “Robots with internal models Journal of Consciousness Studies” 10 (4): 1-45. 2003.