Since the base navigation can be handled using Nav2, which is already pre-configured by the Stretch team and ready to use, I would like to know if there is any specific reason why MoveIt2 (for arm motion only, assuming the base is stationary) has not been provided as pre-configured.
I want to understand whether it would be possible to integrate it, even though it is not officially provided by the Stretch team, before putting any effort into the integration.
Hi @noob-robotics, it’s a good question! There shouldn’t be any blockers from setting up MoveIt2 purely for arm motion planning. You would start with an arm-only version of the URDF, and plug MoveIt2’s output trajectories into the follow joint action in Stretch ROS2 (you might need a small node to translate gripper commands).
Motion planning for just the arm might be limiting since the mobile base plays a big role in the robot’s manipulability. This is why packages like FUNMAP make motion plans for the mobile base + arm. Alternatively, it’s common to treat the mobile base as a virtual rotary or prismatic joint and use standard IK or visual servoing. It’s also worth noting that there was an effort in 2021 to build support for differential drive mobile bases into MoveIt2 and OMPL, however, this development wasn’t completed. I haven’t tracked where that ended up.