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.
Article PDF
Similar content being viewed by others
Avoid common mistakes on your manuscript.
References
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)
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)
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)
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)
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)
Lyons, D.M., Arbib, M.A.: A formal model of computation for sensory-based robotics. IEEE Trans. Robot. Autom. 5, 280–293 (June 1989)
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)
Soetens, P.: A Software framework for real-time and distributed robot and machine control. PhD thesis, Issue: May ISBN: 9056826875 (2006)
Bézivin, J.: On the unification power of models. Softw. Syst. Modeling 4(2), 171–188 (2005). ISBN: 1619-1366, 1619-1374
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)
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)
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
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)
Wang, S., Shin, K.: Reconfigurable software for open architecture controllers (2001)
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)
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)
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)
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)
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)
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)
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
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
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)
Roehr, T.M., Willenbrock, P.: Binary packaging for the robot construction kit (2018)
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
Authors and Affiliations
Corresponding author
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
B: Example Applications
2.1 B.1 Search & Explore Controller
![figure h](http://media.springernature.com/lw685/springer-static/image/art%3A10.1007%2Fs10846-020-01234-9/MediaObjects/10846_2020_1234_Figh_HTML.png)
2.2 B.2 Goal Navigation Controller
![figure i](http://media.springernature.com/lw685/springer-static/image/art%3A10.1007%2Fs10846-020-01234-9/MediaObjects/10846_2020_1234_Figi_HTML.png)
2.3 B.3 Manipulation
![figure j](http://media.springernature.com/lw685/springer-static/image/art%3A10.1007%2Fs10846-020-01234-9/MediaObjects/10846_2020_1234_Figj_HTML.png)
2.4 B.4 Manipulator Tele-Operation Controller
![figure k](http://media.springernature.com/lw685/springer-static/image/art%3A10.1007%2Fs10846-020-01234-9/MediaObjects/10846_2020_1234_Figk_HTML.png)
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/.
About this article
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
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10846-020-01234-9