User Tools

Site Tools


baseline:environment_tools:papyrus4robotics

Papyrus for Robotics

Papyrus is an industrial-grade open source Model-Based Engineering tool. It is based on standards and supports Model-Based Design in UML, SysML and many more. Papyrus has been used successfully in industrial projects and is the base platform for several industrial modeling tools—read more about Papyrus Use Case Stories.

To address the robotics domain according to the RobMoSys methodology and structures, a set of Papyrus-based domain specific modeling languages (DSMLs) and tools are being collected under the Papyrus for Robotics umbrella.

Getting Started and Download

  • Papyrus for Robotics Website — It contains a download link for a RCP (Rich Client Platform, i.e. a ready-to-use Eclipse Installation) with Papyrus for Robotics installed, as well as an update-site for use in existing Eclipse installations (either 2018-09 or 2018-12). Use the “Check for updates” action to automatically get updates in the future.

Capabilities

Papyrus for Robotics uses UML/SysML as underlying realization technology. The platform uses the UML profile mechanism to enable the implementation of DSMLs that assist RobMoSys' ecosystem users in designing robotics systems.

Papyrus for Robotics features a modeling front-end which conforms to RobMoSys' foundational principles of separation of roles and concerns. It provides custom architecture view points, diagram notations and property views, including (but not limited to) those for the definition of software components, services, the representation of the system's architecture, and coordination and configuration policies.

Below's a list of additional capabilities — already available or for which the integration in Papyrus for Robotics is currently on-going.

  • Code-Generation Papyrus for Robotics supports ROS2 code generation and reverse which has been partly financed in the context of the ROSIN focused technical project (FTP) ROS-MDD. More information is in the ROS2 WIKI page.
  • Reverse engineering Papyrus for Robotics can build component and service definitions models from existing systems. A complete library of existing ROS2 service definitions bundled with the current release. The reverse engineering of components is based either on running nodes or on source code analysis. More information on this functionality is available at the Reverse WIKI page.
  • Behavior tree execution, Papyrus for Robotics supports graphical modeling of behavior trees. Modeled behaviors are executable in frameworks compatible with BehaviorTree.CPP, suchROS2 Navigation2. See BT WIKI page.
  • Safety Analysis, Papyrus for Robotics features a safety module to perform dysfunctional analysis on system architecture's components, including task-based hazard and risk analysis (HARA), see HARA WIKI page.

In addition, RobMoSys Integrated Technical Projects (ITP) have contributed the following functionality to the Papyrus for Robotics

  • Mood2Be (OC1), https://robmosys.eu/mood2be/. Exporter from Papyrus for Robotics behavior tree models to the XML format supported by BehaviorTree.CPP.
  • eITUS (OC1), In the context of the eITUS ITP, Papyrus for Robotics supports Fault injection for early safety assessment of robotics systems using fault injection simulations.
  • SafeCC4Robot (OC2), In the context of the SafeCC4Robot ITP, Papyrus for Robotics supports safety considerations by enabling the specification of contracts and assertions. Besides of OCL, the specification supports other formal constraint languages, notably Othello.
  • Miranda (OC2), https://robmosys.eu/itp-2-2-2/. Modeling and code-generation for a field trial application of an inspection robotic rover in the context of a nuclear site.
  • SCOPE (OC2), https://robmosys.eu/scope/. Exporter from Papyrus for Robotics models of skills, behaviors and system architecture to the SCOPE toolchain for the analysis of correct task execution.

Further Resources

baseline:environment_tools:papyrus4robotics · Last modified: 2020/12/22 22:58
http://www.robmosys.eu/wiki/baseline:environment_tools:papyrus4robotics