Skip to main content



      Home
Home » Modeling » Papyrus » [Robotics, ROS2] End-to-end documentation on ROS2 control with Papyrus([Robotics, ROS2] End-to-end documentation on ROS2 control with Papyrus for newbee)
[Robotics, ROS2] End-to-end documentation on ROS2 control with Papyrus [message #1853611] Mon, 11 July 2022 04:32 Go to next message
Eclipse UserFriend
Dear all,

Good Morning. I am new user with Papyrus for robotics and I went through the documentation provided in https://wiki.eclipse.org/Papyrus/customizations/robotics. I was able to create tasks and I would like to go further on linking complete system to existing ROS2 project I have in my local computer.I would like to control ROS2 nodes from Papyrus for robotics and I would like additionally know, if it is possible to program the behavior tree (python/C++). I dont know if this question is already answered, since I wasnt able to find similar questions by searching on tag "Robotics" or "ROS2".

Thank you,
Venkat
Re: [Robotics, ROS2] End-to-end documentation on ROS2 control with Papyrus [message #1853999 is a reply to message #1853611] Wed, 27 July 2022 06:21 Go to previous messageGo to next message
Eclipse UserFriend
Hello, please refer to this page for an overview of the concepts behind task modeling and code-generation in Papyrus for Robotics (P4R): https://wiki.eclipse.org/Papyrus/customizations/robotics/bt

More concretely wrt your question, the code-generated by P4R is compatible with the nav2_behavior_tree package of Nav2 framework, so it's XML & C++ code. See https://github.com/ros-planning/navigation2/tree/main/nav2_behavior_tree

If you have an existing set of ros2 nodes (ros2 action servers) which you want to orchestrate using a BT, then you have to ensure that the skills you execute (the BT action leaves, which play the role of ros2 action clients at the execution) have the same action type of your servers. See the section "Bind a skill to a coordination interface" at https://wiki.eclipse.org/Papyrus/customizations/robotics/bt#Realization_of_skills_by_components

Even if you have already existing components, in the current version of P4R, the models of these components with their server interface must exist for the code generator to work and ensure a consistent deployment. See the section "Bind the coordination interface to the component internals" to do this.

Finally, and this is not visible from the doc, you have to assign the task model to the system model. Right-click on your system model and configure the information in the Task tab in the property view to do this. Then start the code-generation process from the system model to generate the C++ code of the BT leaves.

For a complete , ready-to-run demo on this topic, you can download the P4R companion VM from https://wiki.eclipse.org/Papyrus/customizations/robotics/installation#Installation_through_the_Virtual_Box_Appliance and check the associated video at https://wiki.eclipse.org/Papyrus/customizations/robotics/demos/pick-and-place

Best,
Matteo
Re: [Robotics, ROS2] End-to-end documentation on ROS2 control with Papyrus [message #1854025 is a reply to message #1853999] Thu, 28 July 2022 08:51 Go to previous message
Eclipse UserFriend
@Matteo MORELLI molto grazie
Previous Topic:Nightly builds of Papyrus SW designer
Next Topic:[model2doc] Gone on Upgrade to 2022.06
Goto Forum:
  


Current Time: Tue Jul 08 21:24:15 EDT 2025

Powered by FUDForum. Page generated in 0.03887 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top