MoveIt入门之——使用MoveIt配置助手生成MoveIt配置文件

一.安装MoveIt assistant

sudo apt-get install ros-kinetic-moveit

如果报错说找不到软件包,可能是没有更新源,只要去roswiki上找安装教程,把源重新加入就可以了。

二.打开配置助手

roslaunch moveit_setup_assistant setup_assistant.launch

这个没什么好说的,就一行命令的事

三.开始配置

1.首先你需要有一个没有问题的URDF文件。

至于怎么检查有没有问题:
不用担心,ROS有工具可以使用。

sudo apt-get install liburdfdom-tools

安装完成后只需要用下面这行命令就可以检查特定URDF文件。[your urdf file namw]替换为你的文件名

check_urdf [your urdf file name].urdf

如果没有问题就会看到类似下面这样的信息
这里写图片描述

2.有了URDF文件后,那么启动配置助手,加载URDF文件

这里写图片描述
有两个按键,一个是创建新的MoveIt配置文件,另一个是编辑已有的MoveIt配置文件
这里我们选择创建新的配置文件。
这里写图片描述
选择Browse浏览文件目录,选择你想要的URDF文件,点击load files确定就行了。
这里写图片描述
笔者在这里曾经踩了一次坑,当时无论我用什么URDF文件,load之后在右边的预览框内都无法出现模型的预览。
我找遍了百度,Google都无法找到解决方法,最后还是看terminal的报错信息才意识到可能是因为我没有把URDF文件放在我的工作空间内
所以导致配置助手找不到URDF文件,在我把URDF文件夹放在工作空间的src目录下以后,就成功看到上面这幅图了。
不仅如此,如果单单只有一个URDF文件的话也是不行的,具体原因你要去看terminal的报错信息,这很有用,学会看报错信息很重要。看完就会发现错误提示可能会是说找不到xxx的描述文件,其实就是说找不到你这个模型的stl文件。

3.自碰撞检测配置

这里写图片描述
点击左边栏,跳转到第二步。
第二步是自碰撞检测的配置。很容易理解,机器人在规划运动轨迹的时候可能会出现自身结构相互碰撞的情况,所以我们就需要自碰撞检测
一般来说这一步按照默认值就行了,10000个采样点可以满足一般需求了。
所以只需要点击Generate Collision Matrix 生成碰撞矩阵
这里写图片描述
直观上看碰撞矩阵就像上图这样

4.设置虚拟关节

在这里什么叫做虚拟关节呢?虚拟关节就是定义一个关节将机器人与世界链接起来,举个例子,比如现在给机械臂安装上一个AGV小车底盘,那么这个小车底盘就算机械臂的虚拟关节,这个关节类型是planar(在平面上运动)的;如果把机械臂固定在地面上,那么与地面的连接就算一个虚拟关节,这个关节类型是fixed(固定)的;再比如是一个人形机器人,那么脚底和世界的连接也算一个虚拟关节,而这个关节类型就是float(浮动)的。
child_link指你想要连接到世界的关节。
这里写图片描述

5.创建planning group

创建planning group是使用MoveIt非常核心的一步。
这里写图片描述

规划组的名称:

这里写图片描述

运动学逆解工具选择:

这里选择比较常用的KDL
这里写图片描述

运动规划参数配置:

这里写图片描述
1. Kin. Search Resolution: 关节空间的采样密度
2. Kin. Search TImeout: 求解时间
3. Kin. Solver Attempts: 求解失败尝试次数

这三项参数一般保持默认值就行了。

OMPL算法选择(不一定有这个东西):

这里写图片描述
可能是版本原因,有些MoveIt配置助手并没有这个选项,我能找到的同类教程也鲜有出现这个东西,这个选项其实就是让用户自己选择OMPL的算法,在这里我们选择RRT。关于算法优劣的对比,在这里就不讲了,才疏学浅不好乱讲。
在MoveIt配置助手里,创建规划组有四种方法Add Joints, Add Links, Add Kin. Chain, Add Subgroups,这里我选用Add Kin. Chain。
这里写图片描述
这就完成了一个规划组的配置了。
到此,我们创建了手臂部分的规划组,但是还不够,别忘了,我们还有夹持器呢。
这里写图片描述
这里写图片描述
这里写图片描述

这样就创建了两个规划组。

6.设置robot poses

这一步是用来预先设置好一些固定的位置,就像宏定义一样,自定义一个位置常量,这样我们在写代码的时候就可以直接调用这个位置量了。可以用来设置初始位置什么的。
这里写图片描述
可以手动调节也可以输入数值来调节,调节的单位是弧度。
设置完点击保存就行了。如果没问题的话就会看到下图这样的界面
这里写图片描述

7.配置末端执行器

在大多数情况下,我们会给机械臂安装末端执行器,可以是夹持器,可以是真空吸盘,甚至可以是3d打印机的挤出头。如果恰好安装的是夹持器这种末端执行器,那么刚刚我们多设置的一个规划组就有用了。
这里写图片描述
这里写图片描述

8.设置被动关节

什么叫被动关节?顾名思义就是无法主动运动的关节,也可以理解为从动关节。比如双驱小车上的从动万向轮。码垛机械臂上的从动连杆。如果在这一步设置为被动关节,那么这个关节就不会参与运动规划。
在这里没有被动关节,所以这一步可以跳过。

9.填写作者信息

这里写图片描述

10.最后一步————生成配置文件

这里写图片描述
都是傻瓜操作,就不多说了。

  • 28
    点赞
  • 148
    收藏
    觉得还不错? 一键收藏
  • 11
    评论
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值