The software controlling modern robotic and machine tool systems isbecoming increasingly complex. This has several reasons: distributedsystem architectures involving autonomous, loosely connectedsubsystems are becoming more and more prevalent and are replacingsimpler, centralized ones. At the same time, the need to keep softwaredevelopment costs low mandates reuse and integration of existingsubsystems, which further contributes to complexity due to the need foradditional harmonization and adaptation layers. The increasinguniversality of modern lightweight robots and mobile platforms is alsoreflected on the software, which must cope with stronger demands interms of variability, composability and reconfigurability.One approach to deal with this complexity is the Model BasedEngineering (MBE) paradigm, which has already been successfullyapplied to domains such as automotive, aerospace and controlengineering. In this approach the focus is shifted from traditionalprogramming to capturing the required information in models. Thesemodels can subsequently be transformed to executable form, but withouthaving to assume beforehand how this will be done. Moreover, thesemodels can remain available at runtime to permit online adaptation bythe robot itself. This thesis explores the applicability of MBE to thedomain of distributed, real-time robotic and machine tools systemswith a focus on the coordination of the discrete behavior of suchsystems.Coordination is a system level concern that governs how and whenfunctional subsystems interact. By explicitly modeling coordination,the desired behavior of a system is formalized while permittingfunctional computations to remain free of application logic and hencemore reusable. More concretely, an approach of modeling using domainspecific languages (DSL) is chosen. In this approach, dedicated andcomposable languages are constructed to model a well confineddomain. In contrast to rich, general purpose modeling languages, thisapproach yields minimal models that capture the essence of the problemwhile avoiding the overhead of generality.The main contribution of this thesis is the development of acomposable DSL named rFSM for modeling coordination in distributed andreal-time constrained robotics and machine tool systems, and anassociated approach of applying this model. The advantages ofproviding a minimal, but extensible and composable model aredemonstrated. Further contributions support, make use of or extendthis contribution. Supporting work demonstrates how DSL models can beinstantaneously executed in hard real-time, and introduces the uMF DSLfor modeling structural constraints on DSL models themselves. Theapplicability and potential for improving reuse is shown inexperiments using a hybrid force-velocity task specification languagetogether within an rFSM model to define an assembly task. The work onthe Coordination--Configurator pattern formalizes a frequentlyrecurring architectural pattern that allows to increase theperformance and reusability of coordination.
Table of Contents:
2. Background and Positioning
3. Hard real-time Control and Coordination using Lua
4. Coordinating Robotic Tasks and Systems using rFSM Statecharts
5. Reusable motion specifications with executable DSL
6. Specifying and validating Internal DSL
7. Pure Coordination using the coordinator--Configurator Pattern