Skip to content

Conversation

@arntanguy
Copy link
Collaborator

@arntanguy arntanguy commented Mar 10, 2025

This PR is a rebased from Pierre's work on connecting robot modules together.

This is another experimental branch of mc_rtc. This one allows to connect multiple RobotModule together to create a single Robot instance.

Things that are missing from the branch:

auto-refresh of the Tasks/Constraints when an involved robot is modified through a connection
Refreshing displayed urdf

gergondet and others added 21 commits November 28, 2025 13:53
This method allows to generate a new RobotModule by connecting two
modules together.
Boost 1.74 has a bug in bfs::copy_path, use std::filesystem instead
The introduction of RobotModule::connect made it interesting to compose
robot modules. In order to expose new modules that are composed of
multiple other existing modules, it is necessary to allow loading other
robot modules while creating a new one.

This effectively allows calling get_robot_module from within the
create() function of a new robot module library. To do so we unlock the
mutex just before the actual call to create().

This may have unintended side effects.
@arntanguy arntanguy force-pushed the topic/ConnectModules branch from 4cf8b27 to c756be4 Compare November 28, 2025 13:00
pre-commit-ci bot and others added 3 commits November 28, 2025 13:00
jointConfig for a free joint is a 0-matrix, thus the transform is a zero
matrix. This messes up the root joint's inertia and such.
For now we do not generate a connected robot module using the real urdf
paths, we probably should. To support display as-is in ROS, we use the
control urdf as real urdf.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants