Following "Your First C++ MoveIt Project" tutorial.
// Create the MoveIt MoveGroup Interface
using moveit::planning_interface::MoveGroupInterface;
auto move_group_interface = MoveGroupInterface(node, "manipulator"); //<--- this is the error
// Set a target Pose
auto const target_pose = []{
geometry_msgs::msg::Pose msg;
msg.orientation.w = 1.0;
msg.position.x = 0.28;
msg.position.y = -0.2;
msg.position.z = 0.5;
return msg;
}();
move_group_interface.setPoseTarget(target_pose);
// Create a plan to that target pose
auto const [success, plan] = [&move_group_interface]{
moveit::planning_interface::MoveGroupInterface::Plan msg;
auto const ok = static_cast<bool>(move_group_interface.plan(msg));
return std::make_pair(ok, msg);
}();
// Execute the plan
if(success) {
move_group_interface.execute(plan);
} else {
RCLCPP_ERROR(logger, "Planning failed!");
}
Expected behaviour
Console ouput when runnning ros2 launch moveit2_tutorials demo.launch.py
[INFO] [1726223793.098367005] [moveit_rdf_loader.rdf_loader]: Loaded robot model in 1.01257 seconds
[INFO] [1726223793.098575034] [moveit_robot_model.robot_model]: Loading robot model 'panda'...
[WARN] [1726223793.125028796] [moveit_ros.robot_model_loader]: No kinematics plugins defined. Fill and load kinematics.yaml!
[FATAL] [1726223793.125237385] [move_group_interface]: Group 'manipulator' was not found.
terminate called after throwing an instance of 'std::runtime_error'
what(): Group 'manipulator' was not found.
[ros2run]: Aborted
Possible Solution
Looking at src/moveit_resources/panda_moveit_config/config/panda.srdf we noticed that the robot used calls the movegroup "panda_arm". Changing the MoveGroupInterface name from "manipulator" to "panda_arm" solves the issue
The main branch of this repo uses a Kinova arm model that does have a manipulator group -- you may want to clone the humble branch of this repo and follow along with the Franka example there.
Description
Overview of your issue here.
Your environment
Steps to reproduce
Following "Your First C++ MoveIt Project" tutorial.
Expected behaviour
Console ouput when runnning
ros2 launch moveit2_tutorials demo.launch.py
Possible Solution
Looking at
src/moveit_resources/panda_moveit_config/config/panda.srdf
we noticed that the robot used calls the movegroup "panda_arm". Changing the MoveGroupInterface name from "manipulator" to "panda_arm" solves the issue