Adopting MDE for Specifying and Executing Civilian Missions of Mobile Multi-Robot Systems

Robots are meant to replace humans for a broad variety of everyday tasks, such as environmental monitoring or patrolling large public areas for security assurance. The main focus of researchers and practitioners has been on providing tailored software and hardware solutions for very specific and often complex tasks. On one hand, these solutions show great potential and provide advanced capabilities for solving the specific task. On the other hand, the polarized attention to task-specific solutions makes them hard to reuse, customize, and combine. In this paper we propose a family of domain-specific modeling languages for the specification of civilian missions of mobile multi-robot systems. These missions are meant to be described in terms of models that are: 1) closer to the general problem domain; 2) independent from the underlying technologies; 3) ready to be analyzed, simulated, and executed; and 4) extensible to new application domains, thus opening up the use of robots to even non-technical operators. Moreover, we show the applicability of the proposed family of languages in two real-world application domains: unmanned multicopters and autonomous underwater vehicles.

[1]  Patrizia Scandurra,et al.  Component-based robotic engineering (Part I) [Tutorial] , 2009, IEEE Robotics & Automation Magazine.

[2]  Pei-Chun Lin,et al.  Model-Based Development of Leaping in a Hexapod Robot , 2015, IEEE Transactions on Robotics.

[3]  Christian Schlegel,et al.  Robotic software systems: From code-driven to model-driven designs , 2009, 2009 International Conference on Advanced Robotics.

[4]  Douglas C. Schmidt,et al.  Guest Editor's Introduction: Model-Driven Engineering , 2006, Computer.

[5]  Davide Di Ruscio,et al.  Automatic generation of detailed flight plans from high-level mission descriptions , 2016, MoDELS.

[6]  Azamat Shakhimardanov,et al.  Component-Based Robotic Engineering (Part II) , 2010, IEEE Robotics & Automation Magazine.

[7]  Bran Selic,et al.  The Pragmatics of Model-Driven Development , 2003, IEEE Softw..

[8]  Daewon Lee,et al.  Build Your Own Quadrotor: Open-Source Projects on Unmanned Aerial Vehicles , 2012, IEEE Robotics & Automation Magazine.

[9]  Andreas Angerer,et al.  Towards a graphical language for quadrotor missions , 2014, ArXiv.

[10]  Martin Gogolla,et al.  Using Models at Runtime to Address Assurance for Self-Adaptive Systems , 2015, Models@run.time@Dagstuhl.

[11]  Morgan Quigley,et al.  ROS: an open-source Robot Operating System , 2009, ICRA 2009.

[12]  Kjeld Jensen,et al.  Towards Rule-Based Dynamic Safety Monitoring for Mobile Robots , 2014, SIMPAR.

[13]  Henry Muccini,et al.  Developing next generation ADLs through MDE techniques , 2010, 2010 ACM/IEEE 32nd International Conference on Software Engineering.

[14]  Henry Muccini,et al.  Model-Driven Techniques to Enhance Architectural Languages Interoperability , 2012, FASE.

[15]  Davide Brugali,et al.  HyperFlex: a model driven toolchain for designing and configuring software control systems for autonomous robots , 2016 .

[16]  Kari Pulli,et al.  Real-time computer vision with OpenCV , 2012, Commun. ACM.

[17]  Juan F. Inglés-Romero,et al.  Model-driven software systems engineering in robotics: Covering the complete life-cycle of a robot , 2015, it Inf. Technol..

[18]  Carlos C. Insaurralde,et al.  Model-driven analysis and design for software development of autonomous underwater vehicles , 2015, Robotica.

[19]  Kenzo Nonami,et al.  Embedded autopilot for accurate waypoint navigation and trajectory tracking: Application to miniature rotorcraft UAVs , 2009, 2009 IEEE International Conference on Robotics and Automation.

[20]  Hamid Reza Karimi,et al.  Model approximation for two-dimensional Markovian jump systems with state-delays and imperfect mode information , 2015, Multidimens. Syst. Signal Process..

[21]  Sebastian Wrede,et al.  A Survey on Domain-Specific Languages in Robotics , 2014, SIMPAR.

[22]  Davide Di Ruscio,et al.  A Family of Domain-Specific Languages for Specifying Civilian Missions of Multi-Robot Systems , 2014, MORSE@STAF.

[23]  Roland Siegwart,et al.  Full control of a quadrotor , 2007, 2007 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[24]  Davide Di Ruscio,et al.  FLYAQ: Enabling Non-expert Users to Specify and Generate Missions of Autonomous Multicopters , 2015, 2015 30th IEEE/ACM International Conference on Automated Software Engineering (ASE).

[25]  Mark Rouncefield,et al.  Empirical assessment of MDE in industry , 2011, 2011 33rd International Conference on Software Engineering (ICSE).

[26]  Jadwiga Indulska,et al.  A survey of context modelling and reasoning techniques , 2010, Pervasive Mob. Comput..

[27]  H. Karimi,et al.  Quantized ℋ∞ Filtering for Continuous‐Time Markovian Jump Systems with Deficient Mode Information , 2015 .

[28]  Pablo Bustos,et al.  Improving the lifecycle of robotics components using Domain-Specific Languages , 2013, ArXiv.

[29]  Christian Schlegel,et al.  Model-driven engineering and run-time model-usage in service robotics , 2011, GPCE '11.

[30]  Uwe Aßmann,et al.  A Role-Based Language for Collaborative Robot Applications , 2011, ISoLA Workshops.

[31]  Therese Skrzypietz,et al.  Unmanned Aircraft Systems for Civilian Missions , 2012 .

[32]  Bernhard Rumpe,et al.  MontiArcAutomaton: Modeling Architecture and Behavior of Robotic Systems , 2014, ICRA 2014.

[33]  Davide Brugali,et al.  Model-Driven Software Engineering in Robotics: Models Are Designed to Use the Relevant Things, Thereby Reducing the Complexity and Cost in the Field of Robotics , 2015, IEEE Robotics & Automation Magazine.

[34]  Sun Yushan AUV—state-of-the-art and prospect , 2006 .

[35]  Piotr Trojanek Model-driven engineering approach to design and implementation of robot control system , 2013, ArXiv.

[36]  Steven Skiena,et al.  The Algorithm Design Manual , 2020, Texts in Computer Science.