Domain-specific languages: an annotated bibliography
ACM SIGPLAN Notices
When and how to develop domain-specific languages
ACM Computing Surveys (CSUR)
Design of the ATRON lattice-based self-reconfigurable robot
Autonomous Robots
Distributed control diffusion: towards a flexible programming paradigm for modular robots
Proceedings of the 1st international conference on Robot communication and coordination
FlatCAD and FlatLang: Kits by code
VLHCC '08 Proceedings of the 2008 IEEE Symposium on Visual Languages and Human-Centric Computing
A virtual machine-based approach for fast and flexible reprogramming of modular robots
ICRA'09 Proceedings of the 2009 IEEE international conference on Robotics and Automation
Programming language abstractions for self-reconfigurable robots
Proceedings of the 3rd annual conference on Systems, programming, and applications: software for humanity
Hi-index | 0.00 |
Modular robots are mechatronic devices that enable the construction of highly versatile and flexible robotic systems whose mechanical structure can be dynamically modified. The key feature that enables this dynamic modification is the capability of the individual modules to connect to each other in multiple ways and thus generate a number of different mechanical systems, in contrast with the monolithics fixed structure of conventional robots. The mechatronic flexibility, however, complicates the development of models and programming abstractions for modular robots, since manually describing and enumerating the full set of possible interconnections is tedious and error-prone for real-world robots. In order to allow for a general formulation of spatial abstractions for modular robots and to ensure correct and streamlined generation of code dependent on mechanical properties, we have developed the Modular Mechatronics Modelling Language (M3L). M3L is a domain-specific language, which can model the kinematic structure of individual robot modules and declaratively describe their possible interconnections rather than requiring the user to enumerate them in their entirety. From this description, the M3L compiler generates the code that is needed to simulate the resulting robots within Webots, widely used commercial robot simulator, and the software component needed for spatial structure computations by a virtual machine-based runtime system, which we have developed and used for programming physical modular robots