Moveit 学习——使用MoveIt Setup Assistant创建husky_kinova_moveit_config功能包

  • Post author:
  • Post category:其他


使用 MoveIt Setup Assistant 创建 husky_kinova_moveit_config 功能包

1.在之前创建的ws_moveit工作区中运行MoveIt Setup Assistant

roslaunch moveit_setup_assistant setup_assistant.launch

在这里插入图片描述
点击Create New MoveIt! Configuration Package按钮

在这里插入图片描述
点击browse按钮找到 husky.urdf.xacro 路径,然后点击Load Files。

在这里插入图片描述
发现它搜索的路径范围只包含上边显示的三个,可以添加路径,当然也可以直接把模型文件复制到/ws_moveit/src。


ROS path问题解决方案


路径问题解决后,又出错了:

在这里插入图片描述

太头疼了,可能还是机器人模型文件写的不够规范,还是老方法来解决

在这里插入图片描述
MoveIt Setup Assistant会开始加载机器人描述文件, 等待加载完成提示 Success! Use the left navigation pane to continue。

在这里插入图片描述
2.生成自碰撞矩阵Self-Collision Matrix

  • 默认的碰撞免检矩阵生成器搜索机器人所有关节,这个碰撞免检矩阵是可以安全地关闭检查,从而减少行动规划的处理时间
  • 在某些关节会关闭碰撞检查,比如总是碰撞,从不碰撞,在默认的位置碰撞,或在运动学链条上的相邻处。
  • 采样密度指定了多少个随机机器人位置来检查碰撞。更高的密度需要更多的计算时间,而较低的密度就要减少关闭的检查节点
  • 默认值是10000个碰撞检查。碰撞检查是并行完成,以减少处理时间。

点击左侧的 Self-Collisions 面板按钮,点击 Generate Collision Matrix 按钮,等待自碰撞计算完成

在这里插入图片描述

3.添加虚拟关节

因为这里机械臂的基座是husky小车,是移动的,则不需要添加虚拟关节

4.添加规划组

MoveIt通过定义规划组(planning group)来语义上定义机机械臂的各个部分(如手臂,末端执行器等)。这是MoveIt中一个很重要的概念。简单来说就是定义某些关节为一个组合并起一个名字。

  • 点击左侧 Planning Groups 面板按钮
  • 选择 Add Group ,将会看到如下界面:

    在这里插入图片描述


    添加手臂规划组:


    01.输入Group Name为kinova_j2n6s300

    02.选择 kdl_kinematics_plugin/KDLKinematicsPlugin 作为运动学求解器。(注意:如果你有一个自定义的机器人,也可以选择自定义IK求解器,详见 Kinematics/IKFast)

    03.保持其余选项不变

    04.点击 Add Joints 按钮。在关节列表中选择手臂部分所属的关节,添加到右侧

    05.点击 Save 存储规划组

    在这里插入图片描述


添加手爪规划组:


01.点击 Add Group 按钮

02.输入 Group Name 为 hand

03.保持其余选项不变

04.点击 Add Links 按钮

在这里插入图片描述
5.添加预置机器人位姿

  • 选择左侧Robot Poses
  • 点击Add Pose按钮,定义名称为home
  • 选择规划组kinova_j2n6s300, 右侧会出现各个关节的滑条,拖动设置想要的姿态
  • 点击Save保存
  • 注意 尽量拖动每一个关节,这样如果URDF中有设置错误就可以看出来

    在这里插入图片描述

6.配置末端执行器End Effectors

MoveIt中会给末端执行器一个专门的标签-End Effectors。之前我们已经为末端执行器添加了规划组,这里我们要将其标记为End Effector

  • 选择左侧End Effectors
  • 点击Add End Effector
  • End Effector Name设置为hand
  • End Effector Group选择之前添加的规划组hand
  • 父关节选择为j2n6s300_link_6
  • 父规划组选择留空白

    在这里插入图片描述
    7.添加被动关节、3D感知、Gazebo仿真、ROS Control在这里跳过就可

    8.添加作者信息,不添加的话生不成软件包

    9.生成配置文件:设置好存储名称和位置,点击Generate Package,就完成了husky_kinova_moveit_config的创建。

特别需要注意的一点就是在添加规划组的时候,一定要将joint或者link一个一个的添加到右栏中去,不能按Ctrl一块添加,这样是无效的操作,规划组里什么也没有,也就无法生成包。

在这里插入图片描述
10.运行

roslaunch husky_kinova_moveit_config demo.launch rviz_tutorial:=true

在这里插入图片描述



版权声明:本文为huangjunsheng123原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。