Department of Computer Science

The RAFCON Task Control Framework

Sebastian Brunner

DLR German Aerospace Center


Robotic tasks are becoming increasingly complex, so do robotic systems. New tools are required to manage this complexity and to orchestrate the systems to fulfill demanding autonomous tasks.

For this purpose, we developed a new graphical tool targeting at the creation and execution of robotic tasks, called RAFCON [1] . These tasks are described in hierarchical state machines supporting concurrency, which have their own formal notation. Error detection and handling possibilities are deeply integrated into the core design of our framework. Powerful action concepts can be implemented combining operational and descriptive action models [2]. Next to the logical layout of actions (the logic flow), RAFCON also allows for programming the data flow between actions. It enables to model where data comes from, where it is processed and where it is finally used. In combination with the graphical layout, this leads to a profound explainability of robotic behavior. The tool provides many debugging mechanisms and a GUI with a graphical editor, allowing for fast prototyping, intuitive visual programming and sustainable, collaborative development of complex robotic behavior.

RAFCON’s powerful logging, monitoring and analysis tools allow for tracking the achievement of task objectives and for identifying performance and robustness bottlenecks [3] . By providing a holistic view onto robotic behavior development the task analysis architecture satisfies the requirements of various stakeholders and enables the validation of the implemented robotic behavior. As the behavior is based on a formal state machine concept, verification of system properties can be performed with the “Divine” model checker.

So far, our framework was used on multiple robots in several domains such as space, industry and service robotics. One of the most famous examples of RAFCON’s usage was the ROBEX moon-analogue mission on Mt. Etna, Sicily, in which our framework controlled a mobile manipulator to deploy a network of seismometers on the surface of the volcano [4]. An overview of all projects in which RAFCON was employed so far is given in [5]. Finally, the software architecture of the LRU robot (one of our most complex robots software wise), in which RAFCON plays a central role, is presented [6].


[1] S. G. Brunner, F. Steinmetz, R. Belder, and A. Dömel. RAFCON: A Graphical Tool for Engineering Complex, Robotic Tasks. In IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Deajeon, Korea, October 2016

[2] S. G. Brunner, A. Dömel, P. Lehner, M. Beetz, and F. Stulp. Autonomous Parallelization of Resource-Aware Robotic Task Nodes. IEEE Robotics and Automation Letters, April 2019

[3] S. G. Brunner, P. Lehner, M. J. Schuster, S. Riedel, R. Belder, A. Wedler, D. Leidner, M. Beetz, and F. Stulp. Design, Execution, and Postmortem Analysis of Prolonged Autonomous Robot Operations. IEEE Robotics and Automation Letters, 3(2):1056–1063, April 2018

[4] P. Lehner, S. G. Brunner, A. Dömel, H. Gmeiner, S. Riedel, B. Vodermayer, and A. Wedler. Mobile

Manipulation for Planetary Exploration. In Aerospace Conference, Big Sky, Montana, USA, March 2018. IEEE

[5] S. G. Brunner, F. Steinmetz, R. Belder. RAFCON - RMC advanced flow control;

[6] M. J. Schuster, S. G. Brunner, K. Bussmann, S. Büttner et al. Towards Autonomous Planetary Exploration: The Lightweight Rover Unit (LRU), its Success in the SpaceBotCamp Challenge, and Beyond. Journal of Intelligent & Robotic Systems (JINT), November 2017

Department of Computer Science
Deramore Lane, University of York, Heslington,
York, YO10 5GH, UK
Tel: 01904 325500