机械人学习 day 8

发布时间:2026/7/30 5:02:14
机械人学习 day 8 今天完成了阶段 5学习抓取姿态生成Grasp Planning和阶段 6ROS2 MoveIt2的学习首先这里区分两个概念Object Pose:物体位姿x,y,zGrasp Pose:抓取位姿这里不仅涉及到x,y,z还有抓取的姿态roll,yaw,pitch另外这里特别说明一下Grasp Pose里的x,y,z是物体相对于机械人base_link下的坐标这些在阶段四感知和TF坐标变换下完成因此将阶段五综合以上总结RGB-D视觉阶段通过点云和TF完成物体从相机坐标系到机器人base_link坐标系的转换得到物体在机器人坐标系中的位姿随后进入Grasp Planning阶段根据物体几何信息生成相对于物体的抓取姿态Grasp Pose再通过坐标变换得到机器人末端执行器在base_link下的目标位姿最后由IK和运动规划完成执行。这里的抓取规划主要负责朝什么方向抓以什么姿态手接触物体哪个位置手掌张开多大角度以多大力气去抓但是这里有一个问题是灵巧手抓住物体是在什么阶段开始的经过学习后才知道它几乎跨越了抓取规划和运动规划最终在执行阶段真正开始这里需要补充一个知识六维力传感器x,y,z,方向的力以及x,y,z方向的力矩怎么判断是否抓起来了看z轴方向的力是否增大怎么判断物体是否有倾斜看x,y方向的力矩另外是谁负责生成抓取位姿呢主要是由GraspNet负责它并不是负责生成一个而是生成多个经过评分选择最高的那个抓取规划位姿GraspNet输入的是3D点云输出的是多个抓取位姿候选好的进入阶段六由于阶段六提前学过了这里我主要学习了配置大致分为一下配置机器人模型: URDF 机械人的结构机器人结构: SRDF MoveIt理解机器人计算关节角kinematics.yaml寻找路径ompl_planning.yaml限制运动joint_limits.yaml执行:ros2_controllers.yaml另外说一下Movelt 2, Movelt 2 负责运动规划碰撞检测轨迹生成这里Movelt 2 的核心节点是 Move_group ,它就是MoveIt2运动规划服务器最后讲解一下 实际中抓取一个物体 阶段难度因为我曾经实际中帮过别人一起做过抓取物体手臂为7个关节灵巧手首先最难的是内参和外参以及坐标变换的问题这个直接导致抓不准其次就是抓取规划和运动规划了很多时候发现运动到一半不动了并且有时候出现轨迹很不寻常的现象这也是需要解决的最后在复习一下相机内参标定相机不动人移动棋盘格。手眼标定相机固定在头部标定板固定在手腕机器人移动手臂。这里可能需要3D打印机和刚性转接板上面步骤真的很重要