Papyrus/customizations/robotics/devinstall
Contents
Installation of Papyrus for Robotics development environment
Use the Papyrus for Robotics development environment, if you plan to extend or improve Papyrus for Robotics by contributing to its source code. In the sequel, we propose two different methods to install a suitable development environment.
Manual installation
- Install Papyrus SW designer (which in turn will install Papyrus itself and MARTE) using the following nightly update site within a recent base Eclipse (2020-06).
- Install ESF Infra from its update site
- Install the necessary IDE extensions, notably
- Xtend SDK
- Acceleo
- QVT/o (optional, only if you plan to modify QVT transformation files)
- UML2 extender SDK (if you re-generate static profiles)
- Clone the Papyrus for Robotics git repository
- Import the plugins contained in the git repository (notably in the "plugins" sub-folder) into your Eclipse installation.
Oomph installation
An Oomph installation process is available. It is similar to the one described for Papyrus itself: Papyrus with Oomph. Download the Eclipse installer supporting Oomph. Then, download the Papyrus-for-Robotics setup file.
After opening the Eclipse installer, change to the advanced mode and choose an "Eclipse IDE for committers". Then, use the "add" button, select the "Eclipse projects" catalog and browse the file system to the downloaded Papyrus-for-Robotics setup file (Step 1 in the figure below). Afterwards, you can select Papyrus for Robotics, as shown below.
Eclipse installer based on Oomph, Papyrus-for-Robotics selection
Overview of plugins
The Papyrus for Robotics (P4R) git is organized in the following way
plugins/ plugin folder releng/ feature definition, RCP and update-site targetplatform/ target platform definitions, currently 2019-12 and 2020-06
The plugin folder has 5 main packages
customization/ all plugins related to the Papyrus customization, e.g. diagram customization (Papyrus architecture framework), adapted property views, tables, ... examples/ example models faultinjection/ fault-injection examples (RobMoSys eITUS ITP) ros2/ ROS2 related plugins, notably code-generation, model-libraries (service definitions) and reverse-engineering mechanisms taskbasedriskanalysis/ risk analysis tables