Skip to main content

Online Reconfiguration of Distributed Robot Control Systems for Modular Robot Behavior Implementation

Abstract

The use of autonomous robots in areas that require executing a broad range of different tasks is currently hampered by the high complexity of the software that adapts the robot controller to different situations the robot would face. Current robot software frameworks facilitate implementing controllers for individual tasks with some variability, however, their possibilities for adapting the controllers at runtime are very limited and don’t scale with the requirements of a highly versatile autonomous robot. With the software presented in this paper, the behavior of robots is implemented modularly by composing individual controllers, between which it is possible to switch freely at runtime, since the required transitions are calculated automatically. Thereby the software developer is relieved of the task to manually implement and maintain the transitions between different operational modes of the robot, what largely reduces software complexity for larger amounts of different robot behaviors. The software is realized by a model-based development approach. We will present the metamodels enabling the modeling of the controllers as well as the runtime architecture for the management of the controllers on distributed computation hardware. Furthermore, this paper introduces an algorithm that calculates the transitions between two controllers. A series of technical experiments verifies the choice of the underlying middleware and the performance of online controller reconfiguration. A further experiment demonstrates the applicability of the approach to real robotics applications.

References

  1. 1.

    Quigley, M., Gerkey, B., Conley, K., Faust, J., Foote, T., Leibs, J., Berger, E., Wheeler, R., Ng, A.: ROS: an open-source Robot Operating System. In: ICRA workshop on open source software, vol. 3, pp 1–5 (2009)

  2. 2.

    Joyeux, S., Schwendner, J., Roehr, T.M.: Modular software for an autonomous space rover. In: Proceedings of the 12th International Symposium on Artificial Intelligence, Robotics and Automation in Space (i-SAIRAS, 2014), (Montreal, Québec, Canada), pp 1–8 (2014)

  3. 3.

    Metta, G., Fitzpatrick, P., Natale, L.: YARP – yet another robot platform, Version 2.3.20. Int. J. Adv. Robot. Syst. 3(1), 43–48 (2013)

    Google Scholar 

  4. 4.

    Santos, A., Cunha, A., Macedo, N., Arrais, R., dos Santos, F.N.: Mining the usage patterns of ROS primitives. In: in 2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), (Vancouver, BC), pp. 3855–3860. IEEE, Sept (2017)

  5. 5.

    Stewart, D.B., Khosla, P.: The chimera methodology: Designing dynamically reconfigurable and reusable real-time using port-based objectssoftware. Int. J. Softw. Eng. Knowl. Eng. 6(2), 249–277 (1996)

    Article  Google Scholar 

  6. 6.

    Lyons, D.M., Arbib, M.A.: A formal model of computation for sensory-based robotics. IEEE Trans. Robot. Autom. 5, 280–293 (June 1989)

    Article  Google Scholar 

  7. 7.

    Soetens, P., Bruyninckx, H.: Realtime hybrid task-based control for robots and machine tools. In: Proceedings of the 2005 IEEE International conference on robotics and automation, (Barcelona, Spain), pp 259–264 (2005)

  8. 8.

    Soetens, P.: A Software framework for real-time and distributed robot and machine control. PhD thesis, Issue: May ISBN: 9056826875 (2006)

  9. 9.

    Bézivin, J.: On the unification power of models. Softw. Syst. Modeling 4(2), 171–188 (2005). ISBN: 1619-1366, 1619-1374

    Article  Google Scholar 

  10. 10.

    Bischoff, R., Guhl, T., Prassler, E., Nowak, W., Kraetzschmar, G., Soetens, P., Haegele, M., Pott, A., Breedveld, P., Broenink, J., Brugali, D., Tomatis, N.: BRICS - Best Practice in Robotics. In: ISR 2010 (41st International symposium on robotics) and ROBOTIK 2010 (6th german conference on robotics), (Munich, Germany), VDE, pp 968–975 (2010)

  11. 11.

    Joyeux, S., Albiez, J.: Robot Development: from Components to Systems. In: 6Th national conference on control architectures of robots, (Grenoble, France), INRIA Grenoble Rhône-Alpes May, pp 1–15 (2011)

  12. 12.

    Schlegel, C., Lotz, A., Lutz, M., Stampfer, D., Inglés-Romero, J.F., Vicente-Chicote, C.: Model-driven software systems engineering in robotics: covering the complete life-cycle of a robot. Inform. Technol. 57(2), 85–98 (2015). ISBN: 1611-2776

    Google Scholar 

  13. 13.

    Nordmann, A., Hochgeschwender, N., Wigand, D., Wrede, S.: A survey on domain-Specific modeling and languages in robotics. J. Softw. Eng. Robot. 7, 75–99 (2016)

    Google Scholar 

  14. 14.

    Wang, S., Shin, K.: Reconfigurable software for open architecture controllers (2001)

  15. 15.

    Inglés-Romero, J.F., Lotz, A., Chicote, C.V., Schlegel, C.: Dealing with run-Time Variability in Service robotics: Towards a DSL for non-Functional Properties arXiv:1303.4296 [cs], pp. 1–8, Mar (2013)

  16. 16.

    Fleurey, F., solberg, A.: A domain specific modeling language supporting specification, simulation and execution of dynamic adaptive systems. In: Schürr, A., Selic, B. (eds.) Model Driven Engineering Languages and Systems, vol. 5795, pp 606–621. Springer, Berlin (2009)

  17. 17.

    Klotzbücher, M., Biggs, G., Bruyninckx, H.: Pure Coordination using the coordinator–Configurator Pattern, ArXiv, vol. abs/1303.0066, pp. 11–4, Feb arXiv:1303.0066 (2013)

  18. 18.

    Schwendner, J., Roehr, T.M., Haase, S., Wirkus, M., Manz, M., Arnold, S., machowinski, J.: The artemis rover as an example for model based engineering in space robotics (2014)

  19. 19.

    Kummerle, R., Grisetti, G., Strasdat, H., Konolige, K., Burgard, W.: G2O: A General Framework for Graph Optimization. In: 2011 IEEE International Conference on Robotics and Automation, (Shanghai, China), IEEE, May, pp 3607–3613 (2011)

  20. 20.

    Garrido-Jurado, S., Muñoz-Salinas, R., Madrid-Cuevas, F., Medina-Carnicer, R.: Generation of fiducial marker dictionaries using mixed integer linear programming. Pattern Recogn. 51, 481–491 (2016)

    Article  Google Scholar 

  21. 21.

    Romero-Ramirez, F.J., Muñoz-Salinas, R., Medina-Carnicer, R.: Speeded up detection of squared fiducial markers. Image Vision Comput. 76, 38–47 (2018). ISBN: 0262-8856

    Article  Google Scholar 

  22. 22.

    Schutter, J.D., Laet, T.D., De Schutter, J., De Laet, T., Rutgeerts, J., Decré, W., Smits, R., Aertbeliën, E., Claes, K., Bruyninckx, H.: Constraint-based task specification and estimation for sensor-based robot systems in the presence of geometric uncertainty. Int. J. Robot. Res. 26(5), 433 (2007). Publisher: SAGE Publications

    Article  Google Scholar 

  23. 23.

    Kroger, T.: Opening the door to new sensor-based robot applications - the reflexxes motion libraries. In: 2011 IEEE International Conference on Robotics and Automation, (Shanghai, China), pp. 1–4, IEEE May (2011)

  24. 24.

    Roehr, T.M., Willenbrock, P.: Binary packaging for the robot construction kit (2018)

Download references

Acknowledgements

The authors would like to thank all developers of the Rock and Orocos RTT framework and especially Sylvain Joyeux and Janosch Machowinski for their fundamental work on Rock. Furthermore, we thank the members of the student project THORO for their support in the validation tests on the robot Artemis and Prof. Hendrik Wöhrle for his valuable input in writing the paper.

This work on this paper was performed within the project D-Rock and Q-Rock, funded by the Federal Ministry of Education and Research (BMBF) under grant number 01-IW-15001 and 01-IW-18003.

Funding

Open Access funding provided by Projekt DEAL.

Author information

Affiliations

Authors

Corresponding author

Correspondence to Malte Wirkus.

Additional information

Publisher’s Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Appendices

Appendix A: Examples for Serialized Transition and Task Network Models

Listing 2
figuref

Example Transition in YAML format

Listing 3
figureg

Example Task Network in YAML format

B: Example Applications

B.1 Search & Explore Controller

figureh

B.2 Goal Navigation Controller

figurei

B.3 Manipulation

figurej

B.4 Manipulator Tele-Operation Controller

figurek

Rights and permissions

Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/.

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Wirkus, M., Arnold, S. & Berghöfer, E. Online Reconfiguration of Distributed Robot Control Systems for Modular Robot Behavior Implementation. J Intell Robot Syst 100, 1283–1308 (2020). https://doi.org/10.1007/s10846-020-01234-9

Download citation

Keywords

  • Robot programming
  • Robot control architectures
  • Robot autonomy
  • Model-based development
  • Model-driven engineering
  • Robot control