ROS/Moveit/反射 - 为6DOF机器人生成一系列轨迹目标



我们是一群攻读学士学位的学生,我们遇到了一个问题,我们需要使用 ROS 的 moveit 为 6 D.O.F 机器人手臂生成一系列轨迹目标(姿势、速度、acc((无碰撞(,而机器人模型和碰撞是在 Rviz 的环境中设置的,主要目标是让机器人用球拍击球,这就是为什么我们需要发送一系列目标,以便它可以将击球力施加到球上,而不仅仅是去球的位置并且在到达球时 ACC 为零。

请,任何帮助将不胜感激:(

看起来有几种可能性。一种是您可以使用MoveIt规划笛卡尔路径:

moveit::planning_interface::MoveGroup group("right_arm");
std::vector<geometry_msgs::Pose> waypoints;
geometry_msgs::Pose target_pose3 = start_pose;
geometry_msgs::Pose target_pose3 = waypoint_pose;
waypoint_pose.position.x += 0.2;
waypoints.push_back(waypoint_pose); // Add first waypoint 
waypoint_pose.position.y -= 0.2;
waypoints.push_back(waypoint_pose); // Add second waypoint
// Compute the Cartesian trajectory (stored in a RobotTrajectory)
moveit_msgs::RobotTrajectory trajectory;
group.computeCartesianPath(waypoints,
0.01,  // task space stepsize (meters)
0.0,   // jump threshold
trajectory);

缺点可能是我不确定是否可以在每个航点指定所需的速度和加速度,因此如果您有这些限制,此选项可能不适合您。

另一种选择可能是笛卡尔路径规划。这里有教程和这里,还有一些关于笛卡尔/MoveIt的讨论!集成。这个页面看起来有很多关于笛卡尔的文档。

最新更新