Intelligent Service Robotics

, Volume 7, Issue 2, pp 53–65 | Cite as

Dynamic State Charts: composition and coordination of complex robot behavior and reuse of action plots

  • Dennis Stampfer
  • Christian Schlegel
Special Issue


Support for separation of roles is decisive towards a successful business ecosystem where various stakeholders with dedicated expertises network and collaborate. However, it depends on means for composition(system of systems, reuse of black boxes). This paper proposes Dynamic State Charts as an extension of state charts for composition and coordination of complex robot behavior which is one of the challenges in service robotics. Their states allow to refine their content by choosing from a set of alternative matching state instances for robust task execution and to manage the complexity of real-world tasks. Dynamic State Charts allow reuse and can be bundled with software components and are provided in a repository (idea of an “robot app store”) as a step towards composition and separation of roles as necessary for a business ecosystem in service robotics. The approach is demonstrated in a practical application with a service robot.


Service robotics Task coordination Model-driven software development Robotic software development State charts 



This work has been partially supported by the ITEA2 FIONA project by funding of the German Federal Ministry of Education and Research (BMBF), Förderkennzeichen 01IS13017C. Work on the predecessor was in parts supported by the ZAFH Servicerobotik (, with research grants of the state of Baden-Württemberg and the European Union. The authors thank Matthias Lutz and Alex Lotz (project iserveU by funding of BMBF, Förderkennzeichen 01IM12008B) for their support in discussion and reviewing the article.


  1. 1.
    Bohren J, Rusu RB, Jones EG, Marder-Eppstein E, Pantofaru C, Wise M, Mosenlechner L, Meeussen W, Holzer S (2011) Towards autonomous robotic butlers: lessons learned with the PR2. In: Proceedings of the IEEE International Conference on Robotics and Automation. Shanghai, ChinaGoogle Scholar
  2. 2.
    Bruyninckx H (2001) Open robot control software: the OROCOS project. In: Proceedings of IEEE International Conference on Robotics and Automation, vol. 3, pp 2523–2528Google Scholar
  3. 3.
    Bruyninckx H, Klotzbücher M, Hochgeschwender N, Kraetzschmar G, Gherardi L, Brugali D (2013) The BRICS component model: a model-based development paradigm for complex robotics software systems. In: Proceedings of the 28th Annual ACM Symposium on Applied Computing, SAC ’13, pp. 1758–1764. ACM, New York, NY, USA. doi: 10.1145/2480362.2480693
  4. 4.
    Eclipse Foundation: Xtext Website. Visited 7 Aug 2013
  5. 5.
    Firby RJ (1989) Adaptive execution in complex dynamic worlds. Ph.D. thesis, Yale University, New Haven, USAGoogle Scholar
  6. 6.
    Firby RJ (1994) Task networks for controlling continuous processes. In: Proceedings of the Second International Conference on AI Planning SystemsGoogle Scholar
  7. 7.
    Gindele T, Jagszent D, Pitzer B, Dillmann R (2008) Design of the planner of team AnnieWAYs autonomous vehicle used in the DARPA Urban Challenge 2007. In: IEEE Intelligent Vehicles Symposium, pp 1131–1136. IEEE. doi: 10.1109/IVS.2008.4621268
  8. 8.
    Harel D (1987) Statecharts: a visual formalism for complex systems. Sci Computer Progr 8(3):231–274CrossRefzbMATHMathSciNetGoogle Scholar
  9. 9.
    Hoffmann J, Nebel B (2001) The FF planning system: fast plan generation through heuristic search. J Artif Intell Res 14:253–302Google Scholar
  10. 10.
    Hurdus JG, Hong DW (2008) Behavioral programming with hierarchy and parallelism in the DARPA urban challenge and robocup. IEEE International Conference on Multisensor Fusion and Integration for Intelligent Systems, pp 503–509. doi: 10.1109/MFI.2008.4648045
  11. 11.
    Itemis AG: Yakindu Statechart Tools (2013). Visited 7 Aug 2013
  12. 12.
    Klotzbuecher M, Bruyninckx H (2012) Coordinating robotic tasks and systems with rFSM statecharts. J Softw Eng Robot (JOSER) 3(1):28–56Google Scholar
  13. 13.
    Larman C (2005) Applying UML and patterns—an introduction to object-oriented analysis and design and iterative development. Prentice Hall, New JerseyGoogle Scholar
  14. 14.
    Mülder A, Nyßen A (2011) TMF meets GMF. Eclipse Magazin 3:74–78Google Scholar
  15. 15.
    Niemüller T, Ferrein A, Lakemeyer G (2009) A Lua-based behavior engine for controlling the humanoid robot Nao. In: RoboCup SymposiumGoogle Scholar
  16. 16.
    Noreils F (1990) Integrating error recovery in a mobile robot control system. In: Proceedings of the IEEE International Conference on Robotics and Automation, pp 396–401. doi: 10.1109/ROBOT.1990.126008
  17. 17.
    Object Management Group (2010) Unified modeling language. Superstructure 2.3Google Scholar
  18. 18.
    Papyrus (2013) Visited 7 Aug 2013
  19. 19.
    Pontifcia Universidade Catlica do Rio de Janeiro, Computer Science Department: The Lua Programming Language (2013). Visited 7 Aug 2013
  20. 20.
    Quigley M, Conley K, Gerkey BP, Faust J, Foote T, Leibs J, Wheeler R, Ng AY (2009) ROS: an open-source robot operating system. In: ICRA Workshop on Open Source SoftwareGoogle Scholar
  21. 21.
    Risler M (2009) Behavior control for single and multiple autonomous agents based on hierarchical finite state machines. Dissertation, Universität DarmstadtGoogle Scholar
  22. 22.
    Servicerobotik-Ulm/RoboticsAtHsUlm (2012) The Robot Butler Scenario. YouTube-Video. Visited 7 Aug 2013
  23. 23.
    ROS Community: wiki: SMACH (2011). Visited 7 Aug 2013
  24. 24.
    Schlegel C (2004) Navigation and execution for mobile robots in dynamic environments: an integrated approach. Ph.D. thesis, University of UlmGoogle Scholar
  25. 25.
    Schlegel C, Lotz A, Steck A (2011) SmartSoft: the state management of a component. Tech. rep., University of Applied Sciences UlmGoogle Scholar
  26. 26.
    Schlegel C, Lutz M, Lotz A, Stampfer D, Inglés-Romero JF, Vicente-Chicote C (2013) Model-driven software systems engineering in robotics: covering the complete life-cycle of a robot. In: Informatik 2013, Workshop Roboter-Kontrollarchitekturen, Springer LNI der GI. Koblenz, GermanyGoogle Scholar
  27. 27.
    Schlegel C, Steck A, Lotz A (2012) Model-driven software development in robotics: communication patterns as key for a robotics component model. In: Chugo D, Yokota S (eds) Introduction to modern robotics. iConcept Press, pp 119–150Google Scholar
  28. 28.
    Schlegel C, Steck A, Lotz A (2012) Robotic software systems: From code-driven to model-driven software development. In: Dutta A (ed) Robotic systems—applications, control and programming. InTech, pp 473–502Google Scholar
  29. 29.
    Simons, AJH (2000) On the Compositional Properties of UML Statechart Diagrams. In: Proceedings of the 2000 International Conference on Rigorous Object-Oriented Methods. Swinton, UK Google Scholar
  30. 30.
    Simons AJH, Graham I (1999) 30 Things that go wrong in object modelling with UML, chap. 17. Kluwer Academic Publishers, pp 237–257Google Scholar
  31. 31.
    SmartSoft at Servicerobotik Ulm (2013). Visited 18 Dec 2013
  32. 32.
    Stampfer D (2010) Dynamic State Charts for task sequencing for service robots. Master’s thesis, University of Applied Sciences Ulm, GermanyGoogle Scholar
  33. 33.
    Stampfer D, Schlegel C (2013) Dynamic State Charts: composition and coordination of complex robot behavior and reuse of action plots. In: Proceedings of IEEE Int. Conf. on Technologies for Practical Robot Applications (TePRA). Woburn, MA, USAGoogle Scholar
  34. 34.
    Steck A, Schlegel C (2011) Managing execution variants in task coordination by exploiting design-time models at run-time. In: Proceedings of IEEE/RSJ Int. Conf. on Robotics and Intelligent Systems (IROS). San Francisco, USAGoogle Scholar
  35. 35.
    Waibel M, Beetz M, Civera J, D’Andrea R, Elfring J, Galvez-Lopez D, Haussermann K, Janssen R, Montiel JMM, Perzylo A, Schiessle B, Tenorth M, Zweigle O, van de Molengraft R (2011) RoboEarth—a World Wide Web for robots. IEEE Robotics and Automation Magazine, pp 69–82Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2014

Authors and Affiliations

  1. 1.Department of Computer ScienceUniversity of Applied Sciences UlmUlmGermany

Personalised recommendations