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
@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".

Copy link
Collaborator

Choose a reason for hiding this comment

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

More of a general question than a review comment, is there currently a logic present for the order of function-definitions or is it just "add new functions at the bottom"? Because if that's the case I would like to propose to start putting the functions in alphabetical order to make it easier to read through the code (at least for me).

Not suggesting to change it now but is this maybe something for in the future?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

No, we have no checks on order of functions. I am not sure if this exists, and if so, we would like to do this. I agree that using alphabetic order might make sense in the rviz.py file. But usually, alphabetic order might be more confusing than trying to place related functions close to each other, I think?

Copy link
Collaborator

@rosalievanark rosalievanark left a comment

Choose a reason for hiding this comment

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

Other comments I left are primarily for my information

@Jelmerdw Jelmerdw merged commit 96b1d00 into main Nov 4, 2025
11 checks passed
@Jelmerdw Jelmerdw deleted the add-octomap-and-visualizations-for-grasping branch November 4, 2025 10:44
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

4 participants