Coordinating Robotic Tasks and Systems with rFSM Statecharts

Coordination is a system-level concern defining execution and interaction semantics of functional computations. Separating coordination from functional computations is a key principle for building complex, robust and reusable robotic systems. This work introduces a minimal variant of Harel statecharts called rFSM designed to model coordination of robotic tasks and systems with a minimal number of semantic primitives. Firstly, the semantics of the rFSM language are derived by analyzing state-of-the-art discrete event models and implementations and extracting a motivated and semantically well-defined subset that is considered best practice for the domain of robotic coordination. Secondly, a real-time capable reference implementation of rFSM is presented, which has been loosely integrated into the OROCOS/RTT framework. The application of rFSM is illustrated using a detailed description of a dual robot coordination problem. Lastly, several best practices and patterns are presented with the goal of i) supporting development of robust Coordination models, ii) illustrating how limitations of the statechart model can be overcome by extending the execution semantics, and iii) offering guidance in designing pure coordination components that optimize reusability.

[1]  Joris De Schutter,et al.  Constraint-based Task Specification and Estimation for Sensor-Based Robot Systems in the Presence of Geometric Uncertainty , 2007, Int. J. Robotics Res..

[2]  Michael Breen Statecharts : Some Critical Observations , 2006 .

[3]  Hermann Kopetz,et al.  The time-triggered architecture , 1998, Proceedings First International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC '98).

[4]  Bruce H. Krogh,et al.  Formal verification of statecharts using finite-state model checkers , 2006, IEEE Transactions on Control Systems Technology.

[5]  Emden R. Gansner,et al.  An open graph visualization system and its applications to software engineering , 2000 .

[6]  Herman Bruyninckx,et al.  Hard Real-Time Control and Coordination of Robot Tasks using Lua , 2011 .

[7]  Joris De Schutter,et al.  Specification of force-controlled actions in the "task frame formalism"-a synthesis , 1996, IEEE Trans. Robotics Autom..

[8]  Vladimir Estivill-Castro,et al.  Modelling Behaviour Requirements for Automatic Interpretation, Simulation and Deployment , 2010, SIMPAR.

[9]  Sanford Friedenthal,et al.  OMG Systems Modeling Language (OMG SysML™) Tutorial , 2008 .

[10]  Roberto Ierusalimschy,et al.  The Evolution of an Extension Language: A History of Lua , 2007 .

[11]  Reid G. Simmons,et al.  A task description language for robot control , 1998, Proceedings. 1998 IEEE/RSJ International Conference on Intelligent Robots and Systems. Innovations in Theory, Practice and Applications (Cat. No.98CH36190).

[12]  Thomas B. Sheridan,et al.  Telerobotics, Automation, and Human Supervisory Control , 2003 .

[13]  Matthieu Herrb,et al.  A tool for the specification and the implementation of operating modules in a distributed robot architecture , 1999 .

[14]  A. Pnueli,et al.  STATEMATE: a working environment for the development of complex reactive systems , 1988, [1988] Proceedings. The Third Israel Conference on Computer Systems and Software Engineering.

[15]  Jean-Christophe Baillie URBI: A UNIVERSAL LANGUAGE FOR ROBOTIC CONTROL , 2004 .

[16]  Takashi Suehiro,et al.  A Software Platform for Component Based RT-System Development: OpenRTM-Aist , 2008, SIMPAR.

[17]  Gerard J. Holzmann,et al.  Implementing statecharts in PROMELA/SPIN , 1998, Proceedings. 2nd IEEE Workshop on Industrial Strength Formal Specification Techniques.

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

[19]  Amnon Naamad,et al.  Statemate: a working environment for the development of complex reactive systems , 1988, ICSE '88.

[20]  David Harel,et al.  Statecharts: A Visual Formalism for Complex Systems , 1987, Sci. Comput. Program..

[21]  Amnon Naamad,et al.  The STATEMATE semantics of statecharts , 1996, TSEM.

[22]  Anthony J. H. Simons On the Compositional Properties of UML Statechart Diagrams , 2000, Rigorous Object-Oriented Methods.

[23]  Herman Bruyninckx,et al.  OROCOS RTT-Lua: an Execution Environment for building Real-time Robotic Domain Specific Languages , 2010 .

[24]  Hermann Kopetz,et al.  Should Responsive Systems be Event-Triggered or Time-Triggered ? , 1993 .

[25]  René David,et al.  Petri nets and grafcet - tools for modelling discrete event systems , 1992 .

[26]  Rik Eshuis,et al.  Reconciling statechart semantics , 2009, Sci. Comput. Program..

[27]  R. Geoff Dromey,et al.  From requirements to design: formalizing the key steps , 2003, First International Conference onSoftware Engineering and Formal Methods, 2003.Proceedings..

[28]  Jonathan Bohren,et al.  The SMACH High-Level Executive [ROS News] , 2010 .

[29]  Herman Bruyninckx,et al.  A Lightweight, Composable Metamodelling Language for Specification and Validation of Internal Domain Specific Languages , 2012, MOMPES.

[30]  Matthew T. Mason,et al.  Compliance and Force Control for Computer Controlled Manipulators , 1981, IEEE Transactions on Systems, Man, and Cybernetics.

[31]  Nacéra Bennacer,et al.  A Statechart-Based Model for the Semantic Composition of Web Services , 2007, 2007 IEEE Congress on Services (Services 2007).

[32]  Jörg Kienzle,et al.  Toward high-level reuse of statechart-based AI in computer games , 2011, GAS '11.

[33]  Susan Eisenbach,et al.  Coordination in Evolving Systems , 1996, TreDS.

[34]  Roberto Ierusalimschy,et al.  Lua—An Extensible Extension Language , 1996, Softw. Pract. Exp..

[35]  Herman Bruyninckx,et al.  Pure Coordination using the Coordinator--Configurator Pattern , 2013, ArXiv.

[36]  Michael von der Beeck,et al.  A Comparison of Statecharts Variants , 1994, FTRTFT.

[37]  Melvin E. Conway,et al.  Design of a separable transition-diagram compiler , 1963, CACM.

[38]  Matthieu Herrb,et al.  G/sup en/oM: a tool for the specification and the implementation of operating modules in a distributed robot architecture , 1997, Proceedings of the 1997 IEEE/RSJ International Conference on Intelligent Robot and Systems. Innovative Robotics for Real-World Applications. IROS '97.

[39]  Mariusz Wzorek,et al.  Control System Framework for Autonomous Robots Based on Extended State Machines , 2006, International Conference on Autonomic and Autonomous Systems (ICAS'06).