Towards Python-based Domain-specific Languages for Self-reconfigurable Modular Robotics Research

This paper explores the role of operating system and high-level languages in the development of software and domain-specific languages (DSLs) for self-reconfigurable robotics. We review some of the current trends in self-reconfigurable robotics and describe the development of a software system for ATRON II which utilizes Linux and Python to significantly improve software abstraction and portability while providing some basic features which could prove useful when using Python, either stand-alone or via a DSL, on a self-reconfigurable robot system. These features include transparent socket communication, module identification, easy software transfer and reliable module-to-module communication. The end result is a software platform for modular robots that where appropriate builds on existing work in operating systems, virtual machines, middleware and high-level languages.

[1]  G. A. Miller THE PSYCHOLOGICAL REVIEW THE MAGICAL NUMBER SEVEN, PLUS OR MINUS TWO: SOME LIMITS ON OUR CAPACITY FOR PROCESSING INFORMATION 1 , 1956 .

[2]  Ulrik Pagh Schultz,et al.  A virtual machine-based approach for fast and flexible reprogramming of modular robots , 2009, 2009 IEEE International Conference on Robotics and Automation.

[3]  David Johan Christensen,et al.  Elements of Autonomous Self-Reconfigurable Robots , 2008 .

[4]  Satoshi Murata,et al.  Self-reconfigurable robots , 2007, IEEE Robotics & Automation Magazine.

[5]  Gaurav S. Sukhatme,et al.  Most valuable player: a robot device server for distributed control , 2001, Proceedings 2001 IEEE/RSJ International Conference on Intelligent Robots and Systems. Expanding the Societal Role of Robotics in the the Next Millennium (Cat. No.01CH37180).

[6]  Ulrik Pagh Schultz Distributed control diffusion: towards a flexible programming paradigm for modular robots , 2007 .

[7]  Ulrik Pagh Schultz,et al.  Implementing Flexible Parallelism for Modular Self-reconfigurable Robots , 2008, SIMPAR.

[8]  Ricardo Franco Mendoza Garcia,et al.  Flexible, fpga-based electronics for modular robots , 2008 .

[9]  Kenji Funaoka,et al.  Extended RT-Component Framework for RT-Middleware , 2009, 2009 IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing.

[10]  Siddhartha S. Srinivasa,et al.  Declarative Programming for Modular Robots , 2007 .

[11]  Herman Bruyninckx,et al.  Open robot control software: the OROCOS project , 2001, Proceedings 2001 ICRA. IEEE International Conference on Robotics and Automation (Cat. No.01CH37164).

[12]  David Johan Christensen,et al.  The Assemble and Animate Control Framework for Modular Reconfigurable Robots , 2011, IROS 2011.

[13]  Seth Copen Goldstein,et al.  Meld: A declarative approach to programming ensembles , 2007, 2007 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[14]  Ulrik Pagh Schultz Distributed control diffusion: towards a flexible programming paradigm for modular robots , 2007, ROBOCOMM.