Towards Easy Robot Programming - Using DSLs, Code Generators and Software Product Lines

Programming robots is a complicated and time-consuming task. A robot is essentially a real-time, distributed embedded system. Often, control and communication paths within the system are tightly coupled to the actual physical configuration of the robot. Thus, programming a robot can hardly be achieved by experts of the domain in which the robot is used. In this paper we present an approach towards a domain specific language, which is intended to empower domain experts or even end users to specify robot programs with a dedicated background in programming techniques, but not with special knowledge in the robotics domain. Furthermore we introduce an idea to integrate a software product-line for a hardware and software transparent plug and play mechanism.

[1]  Christian Schlegel,et al.  Dealing with Run-Time Variability in Service Robotics: Towards a DSL for Non-Functional Properties , 2013, ArXiv.

[2]  David Frankel,et al.  Model Driven Architecture: Applying MDA to Enterprise Computing , 2003 .

[3]  A. Verl,et al.  Implementing best practices for systems integration and distributed software development in service robotics - the Care-O-bot®robot family , 2012, 2012 IEEE/SICE International Symposium on System Integration (SII).

[4]  Markus Völter,et al.  Model-Driven Software Development: Technology, Engineering, Management , 2006 .

[5]  Christian Schlegel,et al.  Modellgetriebene Softwareentwicklung für Robotiksysteme , 2009, AMS.

[6]  David M. Weiss,et al.  Software Product-Line Engineering: A Family-Based Software Development Process , 1999 .

[7]  Christian Schlegel,et al.  Towards Quality of Service and Resource Aware Robotic Systems through Model-Driven Software Development , 2010, ArXiv.

[8]  Dominik Henrich,et al.  Fast Vision-based Grasp and Delivery Planning for unknown Objects , 2012, ROBOTIK.

[9]  Dominik Henrich,et al.  Sensor-based Online Planning of Time- optimized Paths in Dynamic Environments , 2009 .

[10]  John Kenneth Salisbury,et al.  Towards a personal robotics development platform: Rationale and design of an intrinsically safe personal robot , 2008, 2008 IEEE International Conference on Robotics and Automation.

[11]  Kasper Stoy,et al.  A Domain-Specific Language for Programming Self-Reconfigurable Robots , 2007 .

[12]  Thomas Buchmann,et al.  FAMILE : Tool support for evolving model-driven product lines , 2012 .

[13]  Dominik Henrich,et al.  Automatic adaptation of sensor-based robots , 2007, 2007 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[14]  Martin Gogolla,et al.  Object Constraint Language , 2009, Encyclopedia of Database Systems.

[15]  Tewfik Ziadi,et al.  RobotML, a Domain-Specific Language to Design, Simulate and Deploy Robotic Applications , 2012, SIMPAR.

[16]  Klaus Pohl,et al.  Software Product Line Engineering - Foundations, Principles, and Techniques , 2005 .

[17]  Kyo Chul Kang,et al.  Feature-Oriented Domain Analysis (FODA) Feasibility Study , 1990 .

[18]  Paul Clements,et al.  Software product lines - practices and patterns , 2001, SEI series in software engineering.

[19]  Martin Gogolla,et al.  Object Constraint Language , 2009, Encyclopedia of Database Systems.

[20]  Frank Budinsky,et al.  Eclipse Modeling Framework , 2003 .