Skip to main content
Log in

A Design and Analysis Methodology for Component-Based Real-Time Architectures of Autonomous Systems

  • Published:
Journal of Intelligent & Robotic Systems Aims and scope Submit manuscript

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)

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. 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)

  2. 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)

  3. 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)

  4. 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)

  5. 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)

  6. 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)

  7. 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)

  8. 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)

  9. 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)

  10. 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)

  11. 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)

  12. 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)

    Book  Google Scholar 

  13. 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)

    Article  MathSciNet  Google Scholar 

  14. Spuri, M.: Analysis of deadline scheduled real-time systems technical report (1996)

  15. Sha, L., Rajkumar, R., Lehoczky, J.P.: Priority inheritance protocols: an approach to real-time synchronization. IEEE Trans. Comput. 39(9), 1175–1185 (1990)

    Article  MathSciNet  Google Scholar 

  16. 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)

    Article  Google Scholar 

  17. Baker, T.P.: Stack-based scheduling of realtime processes. Real-Time Syst. 3(1), 67–99 (1991)

    Article  Google Scholar 

  18. Chetto, H., Silly, M., Bouchentouf, T.: Dynamic scheduling of real-time tasks under precedence constraints. Real-Time Syst. 2(3), 181–194 (1990)

    Article  Google Scholar 

  19. collab=Erann Gat: On three-layer architectures. In: Artificial Intelligence and Mobile Robots (1998)

  20. Albus, J.S.: 4D/RCS: a reference model architecture for intelligent unmanned ground vehicles. AeroSense 2002 (2002)

  21. 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)

  22. 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)

  23. 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)

  24. Brugali, D., Scandurra, P.: Component-based robotic engineering (Part I). IEEE Robot. Autom. Mag. 16 (4), 84–96 (2009)

    Article  Google Scholar 

  25. Brugali, D., Shakhimardanov, A.: Component-based robotic engineering (Part II). IEEE Robot. Autom. Mag. 17(1), 100–112 (2010)

    Article  Google Scholar 

  26. 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)

    Google Scholar 

  27. 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)

    Article  Google Scholar 

  28. 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)

  29. 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)

  30. 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)

  31. 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)

  32. 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)

  33. 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)

  34. Rock, the robot construction kit. http://www.rock-robotics.org/stable/

  35. 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)

  36. Mallet, A., Pasteur, C., Herrb, M.: GenoM3: building middleware-independent robotic components. In: International Conference on Robotics and Automation (ICRA), Anchorage, AK, USA (2010)

  37. 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)

    Chapter  Google Scholar 

  38. 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)

  39. 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)

  40. Singhoff, F., Legrand, J., Nana, L., Marcé, L.: Cheddar: a flexible real time scheduling framework. ACM SIGAda Ada Lett. 24(4), 1–8 (2004)

    Article  Google Scholar 

  41. 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)

  42. 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)

  43. 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)

  44. 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)

  45. Feiler, P., Gluch, D.: Model-based engineering with AADL: an introduction to the SAE architecture analysis & design language. Addison-Wesley Professional, Boston (2012)

    Google Scholar 

  46. Varró, D.: A formal semantics of UML statecharts by model transition systems. In: International Conference on Graph Transformation (ICGT), Barcelona, Spain (2002)

  47. 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)

    Google Scholar 

  48. 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)

  49. 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)

    Google Scholar 

  50. 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)

    Article  Google Scholar 

  51. Szyperski, C., Gruntz, D., Stephan, M.: Component software: beyond object-oriented programming. Addison-Wesley, Reading (2002)

    Google Scholar 

  52. Schlegel, C.: Communication patterns as key towards component-based robotics. J. Adv. Robotic Syst. 3(1), 49–54 (2006)

    Google Scholar 

  53. Klotzbücher, M., Bruyninckx, H.: Coordinating robotic tasks and systems with rFSM statecharts. J. Softw. Eng. Robotics (JOSER) 1(1), 28–56 (2012)

    Google Scholar 

  54. 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)

  55. Herlihy, M.: Wait-free synchronization. ACM Trans. Program. Lang. Syst. 13(1), 124–149 (1991)

    Article  Google Scholar 

  56. 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)

    Article  Google Scholar 

  57. Ferdinand, C.: Worst case execution time prediction by static program analysis. In: International Parallel and Distributed Processing Symposium (IPDPS), Santa Fe, NM, USA (2004)

  58. Hansen, Jeffery, Hissam, Scott, Moreno, Gabriel: Statistical-Based WCET Estimation and Validation. Dublin, Ireland

  59. 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)

  60. Mok, A., Chen, D.: A multiframe model for real-time tasks. IEEE Trans. Softw. Eng. 23(10), 635–645 (1997)

    Article  Google Scholar 

  61. 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)

  62. 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)

  63. 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)

  64. 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)

    Article  Google Scholar 

  65. Desnoyers, M., Dagenais, M.: The LTTng tracer: a low impact performance and behavior monitoring for GNU/Linux. In: Linux Symposium, Ottawa, Canada (2006)

  66. 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)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Nicolas Gobillot.

Additional information

Publisher’s Note

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

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

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

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10846-018-0967-5

Keywords

Mathematics Subject Classification (2010)

Navigation