WP6-P4R: Difference between revisions

From COMP4DRONES
Jump to navigation Jump to search
Line 26: Line 26:
modelling approach. This implies that the tool supports different views for different roles/stakeholders,
modelling approach. This implies that the tool supports different views for different roles/stakeholders,
for instance a service designer, a component developer and a safety as well as system architect. The
for instance a service designer, a component developer and a safety as well as system architect. The
different roles are grouped in different tiers as shown in Figure 43.
different roles are grouped in different tiers as shown in the Figure below.
 
[[File:p4r-robmosys-composition.png|frame|center|RobMoSys composition structures [RobMoSys wiki]]


Tier 1 defines the composition structures, tier 2 domain models and tier 3 content produced by eco-
Tier 1 defines the composition structures, tier 2 domain models and tier 3 content produced by eco-
Line 34: Line 36:
component definition, system assembly and high-level behaviour models. The difference stakeholders
component definition, system assembly and high-level behaviour models. The difference stakeholders
are shown in the following image.
are shown in the following image.
[[File:p4r-tiers+roles.png|frame|center|Roles in Papyrus for Robotics]]


The pyramid is broken down to different views of the model and the stakeholders, as shown in Figure
The pyramid is broken down to different views of the model and the stakeholders, as shown in Figure

Revision as of 13:13, 23 March 2022

Model driven engineering: Papyrus For Robotics

ID WP6-CEA
Contributor CEA
Levels Tool, Platform
Require n.a.
Provide n.a.
Input RobMoSys compliant models (component definition, system architecture, high-level behavior)
Output ROS2 code generation, BT XML format
C4D tooling n.a.
TRL 5

Detailed Description

Papyrus for Robotics is an open-source, Eclipse-based modelling tool for robotic system. It is a customization of the Papyrus UML modelling tool. Papyrus for Robotics conforms to the RobMoSys modelling approach. This implies that the tool supports different views for different roles/stakeholders, for instance a service designer, a component developer and a safety as well as system architect. The different roles are grouped in different tiers as shown in the Figure below.

RobMoSys composition structures [RobMoSys wiki

Tier 1 defines the composition structures, tier 2 domain models and tier 3 content produced by eco- system users. Translated to Papyrus for Robotics, the composition structures are the UML meta-model in combination with a Robotics UML profile, the domain models include model libraries that have been defined by domain experts and come in form of pre-packaged model libraries. Tier 3 are concrete component definition, system assembly and high-level behaviour models. The difference stakeholders are shown in the following image.

Roles in Papyrus for Robotics

The pyramid is broken down to different views of the model and the stakeholders, as shown in Figure 44. The tool does not require a process in which the different steps are executed, but there are implicit dependencies. For instance, a component definition requires the existence of service definitions in order to specify the ports, and a system can only be built once the contained components are defined.

Role in V-Cycle

Within the V-Shape picture, Papyrus4Robotics covers the software related aspects of system, sub- system, and component-level aspects: notably, System requirements (with a focus on IT requirements), the analysis and design with mapping information related to requirements, followed then by a detailed design (assembly of components). The generation of a software system facilitates the system integration by enabling a specification of an assembly of component instances along with their configuration. The system verification and acceptation can be done via simulation. It is planned to add existing Papyrus mechanisms related to compositional performance analysis in a future release.

Interoperability with other C4D tools

Papyrus for Robotics is likely interoperable with S3D, as both are based on UML and MARTE (and are customizations of the Papyrus UML editor). Papyrus for Robotics can generate ROS2 code which in turn can run in a Gazebo simulation. The generated ROS2 has a proven interoperability (first tests run successfully) with PX4 via a bridge between ROS2 and PX4 ́s uORB. This enables the use in the context of the SHERPA precision landing simulator. There is also a likely interoperability with Matlab Simulink, which has been integrated in Papyrus in previous projects.


Current Status

Contribution and Improvements

Design and Implementation