proach presented by Ingl
´
es-Romero et al. aims to sup-
port developers of robotic systems (e.g. experts in the
robotics domain) while our approach has the goal to
enable individuals without dedicated backgrgound in
robotics to specify programs for robots. Furthermore,
the DSL is only able to express variability informa-
tion. It is not possible to specify the behavior of the
robot.
Steck et al. present an approach (Steck et al.,
2009) that is dedicated to a model-driven develop-
ment process of robotic systems. They present an
environment called SmartSoft (Steck and Schlegel,
2010) which provides a component based approach
to develop robotics software. The SmartSoft environ-
ment is based on Eclipse and the Eclipse Modeling
Project
4
. It uses Papyrus
5
for UML modeling. By us-
ing a model-driven approach, the authors focus on a
strict separation of roles throughout the whole devel-
opment life-cycle. Again, experts in the robotics do-
main are addressed with this approach while our ap-
proach doesn’t required expert knowledge in robotics.
RobotML (Dhouib et al., 2012), a modeling lan-
guage for robot programs also aims to provide model-
driven engineering capabilities for the domain of
robot programming. RobotML is an extension to the
Eclipse-based UML modeling tool Papyrus. Papyrus
puts strong emphasis on UML’s profile mechanism,
which allows domain-specific adaptations. RobotML
provides code generators for different target plat-
forms, like Orocos, RTMaps, Arrocam or Blender/-
Morse. The approach presented by Dhouib et al. ad-
dresses developers of robot programs or algorithms,
while our approach is targeted towards regular pro-
grammers or even end users instead.
Bubeck et al. present in (Bubeck et al., 2012)
an overview about best practices for system integra-
tion and distributed software development in service
robotics. Furthermore, the authors develop BRIDE
6
,
a graphical DSL for ROS developers. Using BRIDE,
new ROS nodes or ROS-based systems can be spec-
ified in a graphical way and corresponding C++ or
Python code may be generated. In addition, the re-
quired launch files for the ROS environment including
the relevant parameters and dependencies are gener-
ated as well, similar to the approach which we used
in our case study as described in section 3. Similar
to the approaches discussed above, BRIDE also ad-
dresses robot experts while our approach is targeted
towards end users or users that only required a back-
ground in programming rather than dedicated robotic
skills.
4
http://www.eclipse.org/modeling/
5
http://www.eclipse.org/papyrus
6
http://ros.org/wiki/bride
In (Schultz et al., 2007), Schultz et al. present
an approach for a domain-specific language intended
for programming self-configurable robots. The DSL
is targeted towards the ATRON self-reconfigurable
robot. Like all other approaches mentioned in this
section, it aims to provide a higher-level of abstrac-
tion for robot experts.
5 CONCLUSIONS AND FUTURE
WORK
In this paper we presented our approach towards easy
robot programming for personal robots. We demon-
strated the feasibility of our approach by presenting
the case study in which we implemented a domain-
specific language for pick and place operations on top
of the Robot Operating System (ROS).
The next steps are: (1) Transfering the pick and
place DSL from the Robot Simulation Framework
ROS to real robots by using our own robotics frame-
work. (2) Defining a DSL which also covers other
robotic application domains and (3) apply our soft-
ware product line approach to enable mass customiza-
tion of the DSL in order to adopt to specific customer
needs as well as specific hardware configurations.
We plan to evaluate our domain-specific language
in projects with undergraduate students who do not
have experienced programming skills. Furthermore,
we additionally plan to use our approach in co-
operative projects with high-schools.
REFERENCES
Baumgartl, J. and Henrich, D. (2012). Fast vision-based
grasp and delivery planning for unknown objects. vol-
ume 7th German Conference on Robotics (ROBOTIK
2012), Munich, Germany, May 21 - 22, 2012.
Bubeck, A., Weisshardt, F., Sing, T., Reiser, U., Hagele, M.,
and Verl, A. (2012). Implementing best practices for
systems integration and distributed software develop-
ment in service robotics - the care-o-bot robot family.
In System Integration (SII), 2012 IEEE/SICE Interna-
tional Symposium on, pages 609–614.
Buchmann, T. and Schw
¨
agerl, F. (2012). FAMILE: tool
support for evolving model-driven product lines. In
St
¨
orrle, H., Botterweck, G., Bourdells, M., Kolovos,
D., Paige, R., Roubtsova, E., Rubin, J., and Tolvanen,
J.-P., editors, Joint Proceedings of co-located Events
at the 8th European Conference on Modelling Foun-
dations and Applications, CEUR WS, pages 59–62,
Building 321, DK-2800 Kongens Lyngby. Technical
University of Denmark (DTU).
Clements, P. and Northrop, L. (2001). Software Prod-
uct Lines: Practices and Patterns. Addison-Wesley,
Boston, MA.
TowardsEasyRobotProgramming-UsingDSLs,CodeGeneratorsandSoftwareProductLines
553