Abstract
The integration of autonomous robots in real applications is a challenge. It needs that the behaviour of these robots is proved to be safe. In this paper, we focus on the real-time software embedded on the robot, and that supports the execution of safe and autonomous behaviours. We propose a methodology that goes from the design of component-based software architectures using a Domain Specific Language, to the analysis of the real-time constraints that arise when considering the safety of software applications. This methodology is supported by a code generation toolchain that ensures that the code eventually executed on the robot is consistent with the analysis performed. This methodology is applied on a ground robot exploring an area. Categories (2), (3)
Similar content being viewed by others
References
Freitas, G., Hamner, B., Bergerman, M., Singh, S.: A practical obstacle detection system for autonomous orchard vehicles. In: International Conference on Intelligent Robots and Systems (IROS), Vilamoura-Algarve, Portugal (2012)
Haddadin, S., Haddadin, S., Khoury, A., Rokahr, T., Parusel, S., Burgkart, R., Bicchi, A., Albu-Schaffer, A.: A truly safely moving robot has to know what injury it may cause. In: International Conference on Intelligent Robots and Systems (IROS), Vilamoura-Algarve, Portugal (2012)
Lens, T., Von Stryk, O.: Investigation of safety in human-robot-interaction for a series elastic, tendon-driven robot arm. In: International Conference on Intelligent Robots and Systems (IROS), Vilamoura-Algarve, Portugal (2012)
Rybski, P., Anderson-Sprecher, P., Huber, D., Niessl, C., Simmons, R.: Sensor fusion for human safety in industrial workcells. In: International Conference on Intelligent Robots and Systems (IROS), Vilamoura-Algarve, Portugal (2012)
Tamura, Y., Dai Le, P., Hitomi, K., Chandrasiri, N., Bando, T., Yamashita, A., Asama, H.: Development of pedestrian behavior model taking account of intention. In: International Conference on Intelligent Robots and Systems (IROS), Vilamoura-Algarve, Portugal (2012)
Elbaum, S., Detweiler, C.: Reducing failure rates of robotic systems though inferred invariants monitoring. In: International Conference on Intelligent Robots and Systems (IROS), Tokyo, Japan (2013)
Nakamura, A., Nagata, K., Harada, K., Yamanobe, N., Tsuji, T., Foissotte, T., Kawai, Y.: Error recovery using task stratification and error classification for manipulation robots in various fields. In: International Conference on Intelligent Robots and Systems (IROS), Tokyo, Japan (2013)
Decastro, J., Kress-Gazit, H.: Guaranteeing reactive high-level behaviors for robots with complex dynamics. In: International Conference on Intelligent Robots and Systems (IROS), Tokyo, Japan (2013)
Pathak, S., Pulina, L., Metta, G., Tacchella, A.: Ensuring safety of policies learned by reinforcement reaching objects in the presence of obstacles with the iCub. In: International Conference on Intelligent Robots and Systems (IROS), Tokyo, Japan (2013)
Cervin, A., Lincoln, B., Eker, J., Årzén, K.-E., Buttazzo, G.: The Jitter Margin and its application in the design of real-time control systems. In: International Conference on Real-Time and Embedded Computing Systems and Applications (RTCSA), Göteborg, Sweden (2004)
Henriksson, D., Cervin, A., Åkesson, J., Årzén, K.-E.: On dynamic real-time scheduling of model predictive controllers. In: International Conference on Decision and Control (CDC), Las Vegas, NV, USA (2002)
Klein, M.H., Ralya, T., Pollak, B., Obenza, R., Harbour, M.G.: A practitioner’s handbook for real-time analysis. Kluwer Academic Publishers, Dordrecht (1993)
Liu, L., James, C., Layland, W.: Scheduling algorithms for multiprogramming in a hard-real-time environment scheduling algorithms for multiprogramming. J. Assoc. Comput. Mach. 20(1), 46–61 (1973)
Spuri, M.: Analysis of deadline scheduled real-time systems technical report (1996)
Sha, L., Rajkumar, R., Lehoczky, J.P.: Priority inheritance protocols: an approach to real-time synchronization. IEEE Trans. Comput. 39(9), 1175–1185 (1990)
Chen, M.-I., Lin, K.-J.: Dynamic priority ceilings: a concurrency control protocol for real-time systems. Real-Time Syst. 2(4), 325–346 (1990)
Baker, T.P.: Stack-based scheduling of realtime processes. Real-Time Syst. 3(1), 67–99 (1991)
Chetto, H., Silly, M., Bouchentouf, T.: Dynamic scheduling of real-time tasks under precedence constraints. Real-Time Syst. 2(3), 181–194 (1990)
collab=Erann Gat: On three-layer architectures. In: Artificial Intelligence and Mobile Robots (1998)
Albus, J.S.: 4D/RCS: a reference model architecture for intelligent unmanned ground vehicles. AeroSense 2002 (2002)
McGann, C., Py, F., Rajan, K., Thomas, H., Henthorn, R., McEwen, R.: A Deliberative Architecture for AUV Control. In: International Conference on Robotics and Automation (ICRA), Pasadena, California, USA (2008)
Muscettola, N., Dorais, G., Fry, C., Levinson, R., Plaunt, C.: IDEA planning at the core of autonomous reactive agents. In: International NASA Workshop on Planning and Scheduling for Space (IWPSS), Houston, TX, USA (2002)
Volpe, Richard, Nesnas, Issa, Estlin, Tara, Mutz, D, Petras, Richard, Das, Hari: The CLARAty Architecture for Robotic Autonomy. In: IEEE Aerospace Conference, Big Sky, MT, USA (2001)
Brugali, D., Scandurra, P.: Component-based robotic engineering (Part I). IEEE Robot. Autom. Mag. 16 (4), 84–96 (2009)
Brugali, D., Shakhimardanov, A.: Component-based robotic engineering (Part II). IEEE Robot. Autom. Mag. 17(1), 100–112 (2010)
Jung, M.Y., Balicki, M., Taylor, R.H., Kazanzides, P.: Lessons learned from the development of component-based medical robot systems. J. Softw. Eng. Robotics 5(2), 25–41 (2013)
Ando, N., Kurihara, S., Biggs, G., Sakamoto, T., Nakamoto, H., Kotoku, T.: Software deployment infrastructure for component based rt-systems. J. Rob. Mechatronics 23(3), 350–359 (2011)
Manso, L., Bachiller, P., Bustos, P., Nunez, P., Cintas, R., Calderita, L.: RoboComp: a tool-based robotics framework. In: International Conference on Simulation, Modelling and Programming for Autonomous Robots (SIMPAR), Darmstadt, Germany (2010)
Martínez, J., Romero-Garcés, A., Manso, L., Bustos, P.: Improving a robotics framework with real-time and high-performance features. In: International Conference on Simulation, Modeling, and Programming for Autonomous Robots (SIMPAR), Darmstadt, Germany (2010)
Soetens, P., Bruyninckx, H.: Realtime hybrid task-based control for robots and machine tools. In: International Conference on Robotics and Automation (ICRA), Barcelona, Spain (2005)
Quigley, M., Conley, K., Gerkey, B., Faust, J., Foote, T., Leibs, J., Berger, E., Wheeler, R., Mg, A.: ROS: an open-source robot operating system. In: ICRA Workshop on Open Source Software, Kobe, Japan (2009)
Basu, A., Gallien, M., Lesire, C., Nguyen, T.-h., Bensalem, S., Ingrand, F., Sifakis, J.: Incremental component-based construction and verification of a robotic system. In: Eureopean Conference on Artificial Intelligence (ECAI), Patras, Greece (2008)
Navet, N., Loïc, F.: CPAL high-level abstractions for safe embedded systems. In: Proceedings of the International Workshop on Domain-specific Modeling, DSM 2016, pp. 35–41, New York, NY, USA. ACM (2016)
Rock, the robot construction kit. http://www.rock-robotics.org/stable/
Bruyninckx, H., Klotzbücher, M., Hochgeschwender, N., Kraetzschmar, G., Gherardi, L., Brugali, D.: The BRICS component model: a model-based development para-digm for complex robotics software systems. In: ACM Symposium on Applied Computing (SAC), Coimbra, Portugal (2013)
Mallet, A., Pasteur, C., Herrb, M.: GenoM3: building middleware-independent robotic components. In: International Conference on Robotics and Automation (ICRA), Anchorage, AK, USA (2010)
Foughali, M., Berthomieu, B., Dal Zilio, S., Ingrand, F., Mallet, A.: Model checking real-time properties on the functional layer of autonomous robots. In: International Conference on Formal Engineering Methods (ICFEM), Tokyo, Japan (2016)
Schlegel, C., Steck, A., Brugali, D., Knoll, A.: Design abstraction and processes in robotics: from code-driven to model-driven engineering. In: International Conference on Simulation, Modeling, and Programming for Autonomous Robots (SIMPAR), Darmstadt, Germany (2010)
Steck, A., Schlegel, C.: Towards quality of service and resource aware robotic systems through model-driven software development. In: International Workshop on Domain-Specific Languages and Models for Robotic Systems (DSLRob), Taipei, Taiwan (2010)
Singhoff, F., Legrand, J., Nana, L., Marcé, L.: Cheddar: a flexible real time scheduling framework. ACM SIGAda Ada Lett. 24(4), 1–8 (2004)
Gobillot, N., Lesire, C., Doose, D.: A modeling framework for software architecture specification and validation. In: International Conference on Simulation, Modeling, and Programming for Autonomous Robots (SIMPAR), Bergamo, Italy (2014)
Gobillot, N., Doose, D., Lesire, C., Santinelli, L.: Periodic state-machine aware real-time analysis. In: Emerging Technologies and Factory Automation (ETFA), Luxembourg, Luxembourg (2015)
Gobillot, N., Guet, F., Doose, D., Grand, C., Lesire, C., Santinelli, L.: Measurement-based real-time analysis of robotic software architectures. In: International Conference on Intelligent Robots and Systems (IROS), Daejeon, South Korea (2016)
Watanabe, Y., Manecy, A., Amiez, A., Lesire, C., Grand, C.: Non-cooperative ground vehicle tracking and interception by multi-RPA collaboration. In: International Council of the Aeronautical Sciences (ICAS), Daejeon, South Korea (2016)
Feiler, P., Gluch, D.: Model-based engineering with AADL: an introduction to the SAE architecture analysis & design language. Addison-Wesley Professional, Boston (2012)
Varró, D.: A formal semantics of UML statecharts by model transition systems. In: International Conference on Graph Transformation (ICGT), Barcelona, Spain (2002)
Selic, B., Gérard, S.: Modeling and analysis of real-time and embedded systems with UML and MARTE: developing Cyber-Physical systems. Elsevier, Amsterdam (2013)
Biggs, G., Fujiwara, K., Anada, K.: Modelling and analysis of a redundant mobile robot architecture using AADL. In: International Conference on Simulation, Modeling, and Programming for Autonomous Robots (SIMPAR), Bergamo, Italy (2014)
Bardaro, G., Semprebon, A., Matteucci, M.: AADL For robotics: a general approach for system architecture modeling and code generation. J. Softw. Eng. Robotics (JOSER) 8(1), 32–44 (2017)
Hart, P., Nilsson, N., Raphael, B.: A formal basis for the heuristic determination of minimum cost paths. IEEE Trans. Syst. Sci. Cybern. 4(2), 100–107 (1968)
Szyperski, C., Gruntz, D., Stephan, M.: Component software: beyond object-oriented programming. Addison-Wesley, Reading (2002)
Schlegel, C.: Communication patterns as key towards component-based robotics. J. Adv. Robotic Syst. 3(1), 49–54 (2006)
Klotzbücher, M., Bruyninckx, H.: Coordinating robotic tasks and systems with rFSM statecharts. J. Softw. Eng. Robotics (JOSER) 1(1), 28–56 (2012)
Gobillot, N., Lesire, C., Doose, D.: A component-based navigation-guidance-control design pattern for mobile robots. In: ICRA Workshop on Software Development and Integration for Robotics (SDIR), Karlsruhe, Germany (2013)
Herlihy, M.: Wait-free synchronization. ACM Trans. Program. Lang. Syst. 13(1), 124–149 (1991)
Wilhelm, R., Mitra, T., Mueller, F., Puaut, I., Puschner, P., Staschulat, J., Stenström, P., Engblom, J., Ermedahl, A., Holsti, N., Thesing, S., Whalley, D., Bernat, G., Ferdinand, C., Heckmann, R.: The worst-case execution-time problem-overview of methods and survey of tools. ACM Trans. Embedded Comput. Syst. 7(3), 36:1–36:53 (2008)
Ferdinand, C.: Worst case execution time prediction by static program analysis. In: International Parallel and Distributed Processing Symposium (IPDPS), Santa Fe, NM, USA (2004)
Hansen, Jeffery, Hissam, Scott, Moreno, Gabriel: Statistical-Based WCET Estimation and Validation. Dublin, Ireland
Cucu-Grosjean, L., Santinelli, L., Houston, M., Lo, C., Vardanega, T., Kosmidis, L., Abella, J., Mezzetti, E., Quiñones, E., Cazorla, F.: Measurement-based probabilistic timing analysis for multi-path programs. In: Euromicro Conference on Real-Time Systems (ECRTS), Pisa, Italy (2012)
Mok, A., Chen, D.: A multiframe model for real-time tasks. IEEE Trans. Softw. Eng. 23(10), 635–645 (1997)
Moyo, N.T., Nicollet, E., Lafaye, F., Moy, C.: On schedulability analysis of non-cyclic generalized multiframe tasks. In: Euromicro Conference on Real-Time Systems (ECRTS), Brussels, Belgium (2010)
Stigge, M., Ekberg, P., Guan, N., Yi, W.: The digraph real-time task model. In: Real-Time and Embedded Technology and Applications Symposium (RTAS), Chicago, IL, USA (2011)
Zeng, H., Di Natale, M.: Schedulability analysis of periodic tasks implementing synchronous finite state machines. In: 2012 24th Euromicro Conference on Real-Time Systems (2012)
Baruah, S., Rosier, L.E., Howell, R.R.: Algorithms and complexity concerning the preemptive scheduling of periodic, real-time tasks on one processor. Real-Time Syst. 2, 301–324 (1990)
Desnoyers, M., Dagenais, M.: The LTTng tracer: a low impact performance and behavior monitoring for GNU/Linux. In: Linux Symposium, Ottawa, Canada (2006)
Doose, D., Grand, C., Lesire, C.: MAUVE runtime: a component-based middleware to reconfigure software architectures in real-time. J. Softw. Eng. Robotics (JOSER) 8(1), 128–140 (2017)
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.
Rights and permissions
About this article
Cite this article
Gobillot, N., Lesire, C. & Doose, D. A Design and Analysis Methodology for Component-Based Real-Time Architectures of Autonomous Systems. J Intell Robot Syst 96, 123–138 (2019). https://doi.org/10.1007/s10846-018-0967-5
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10846-018-0967-5