Skip to content

Conversation

@Jelmerdw
Copy link
Collaborator

@Jelmerdw Jelmerdw commented Oct 28, 2025

Description

This PR extends functions for the control of the arm, in preparation of grasping:

  • One can create an octomap for MoveIt and visualize in RViz.
  • One can visualize a grasp pose in Rviz.
  • One can create, visualize and execute a plan for an end-effector pose as separate steps.
  • One can control all actions mentioned using a simple ui, created with Python's nicegui package.

Fixes: #222, #278

Testing

You can test all actions by starting the franka_planning configuration in one terminal:

ros2 launch rcdt_launch robots.launch.py configuration:=franka_planning

and the simple ui in a second terminal:

ros2 run rcdt_utilities simple_gui.py --ros-args -p namespace:=franka1

You should be able to perform all actions in the browser on http://localhost:8080.

Documentation

  • I have updated the documentation (if necessary)

Additional Notes

Any relevant screenshots, logs, or context.

@Jelmerdw Jelmerdw marked this pull request as ready for review October 28, 2025 16:05
Signed-off-by: Jelmer de Wolde <[email protected]>
Signed-off-by: Jelmer de Wolde <[email protected]>
@Jelmerdw Jelmerdw force-pushed the add-octomap-and-visualizations-for-grasping branch from f47bff6 to d577008 Compare October 30, 2025 14:17
return;
}
auto cmd = fmt::format(
"ros2 launch rcdt_moveit relay_octomap.launch.py "
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this done just to ensure that the Octomap is not run all the time? Is there no way to disable/pause the Octomap generation more directly? Or does the third-party code not support that?

Copy link
Collaborator Author

@Jelmerdw Jelmerdw Oct 30, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Indeed. I couldn't find a way to enable or disable. Also see:
moveit/moveit#1728

The only suggested solution is to enable/disable by passing the camera output to a topic (or not). I first tried this with a subscriber/publisher, but this results in delays due to serialization. Therefore I now start the topic_tools relay process to do this without serialization.

@geurto
Copy link
Collaborator

geurto commented Oct 30, 2025

When running the robots.launch.py as indicated above, I get

[gz-4] [Err] [Physics.cc:1785] Attempting to create a mimic constraint for joint [fr3_finger_joint2] but the chosen physics engine does not support mimic constraints, so no constraint will be created.
[...]
[gz-4] [Err] [Ogre2MeshFactory.cc:595] Cannot load mesh with zero sub-meshes
[gz-4] [Err] [Ogre2MeshFactory.cc:124] Failed to get Ogre item for [/home/rcdt/rcdt_robotics/ros2_ws/install/rcdt_gazebo/share/rcdt_gazebo/models/basket/resources/basket.obj]
[gz-4] [Err] [SceneManager.cc:426] Failed to load geometry for visual: visual
[gz-4] [Err] [Ogre2MeshFactory.cc:595] Cannot load mesh with zero sub-meshes
[gz-4] [Err] [Ogre2MeshFactory.cc:124] Failed to get Ogre item for [/home/rcdt/rcdt_robotics/ros2_ws/install/rcdt_gazebo/share/rcdt_gazebo/models/brick/resources/baksteen.obj]
[gz-4] [Err] [SceneManager.cc:426] Failed to load geometry for visual: visual

And the simple_gui gives a "No executable found".

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.

[Arm] Research collision monitoring for the arm based on the pointcloud

3 participants