Skip to content

ipa320/RosTooling

Repository files navigation

RosTooling

License ros-model CI

The main purpose of this effort is to combine the advantages of ROS and Model-Driven-Engineering techniques. This repository holds a family of metamodels defined as Ecore models and their corresponding Xtext-based DSLs (Domain Specific Language) implementation. The resulted models allow the description of ROS and ROS2 concepts and properties, like packages, artifacts, nodes, interfaces types, parameters... Moreover a complete system as composition of ROS components can be also modelled.

The models have associated tools, the following are some examples:

  • Textual editors with grammar highlight, debug functionalities and auto-complete helpers.
  • Validators to check the corretness and check the use of best practices
  • Code geneators to automatically generate code, documentation, helper scripts...
  • (ToBeDone) Graphical editor

Technical Maintainer: ipa-nhg (Nadia Hammoudeh Garcia, Fraunhofer IPA) - nadia.hammoudeh.garcia@ipa.fraunhofer.de

The documentation of the RosTooling is available under https://ipa320.github.io/RosTooling.github.io/.


Related repositories:

Publications:

  • Paper: Bootstrapping MDE Development from ROS Manual Code - Part 1: Metamodeling IRC19 paper
  • Paper: Bootstrapping MDE Development from ROS Manual Code - Part 2: Model Generation Models paper
  • Journal Paper: Bootstrapping MDE development from ROS manual code - Part 2: Model generation and leveraging models at runtime and SoSym paper
  • Paper: Lifting ROS to Model-Driven Development: Lessons Learned from a bottom-up approach RoSE paper