目录
Setup Assistant配置
如果使用自己创建的机器人urdf模型,则使用MoveIt!的第一步就是用Setup Assistant工具完成一些配置工作。Setup Assistant会根据用户导入的机器人urdf模型生成srdf文件,从而创建一个MoveIt!配置的功能包,完成机器人的配置、可视化和仿真等工作。
首先,使用如下命令启动MoveIt Setup Assistant:
rosrun moveit_setup_assistant moveit_setup_assistant
运行成功后,会出现如下图所示的界面:
1 Start 加载urdf模型
这里有两个选择:(1)新建配置功能包、(2)使用已有的配置功能包。
点击“Create New MoveIt Configuration Package”按钮,在下侧的模型加载窗口中选择模型文件路径,即urdf文件xxx.xacro
点击“Load Files”按钮完成模型加载,模型加载后,可以在右侧的窗口中看到Marm机械臂的模型
# 2 Self-Collisions 自碰撞矩阵
机器人urdf模型里面可以定义障碍物,也就是你不希望机器人碰撞到的地方。Moveit在运行过程中会一直进行碰撞检测。碰撞检测是按照一定检测频率实时进行的,检测频率低了会检测不到一些碰撞,高了就会影响运行速度。
为了节省计算资源,moveit提供了一个优化碰撞检测的选项供用户配置,可以提前告诉电脑哪些link肯定不会碰撞,哪些link肯定碰撞。这样不需要花费计算资源去检测这些link了。
MoveIt!允许我们设置一定数量的随机采样点,根据这些点生成碰撞参数,检测永远不会发生碰撞的link。点过多会造成运算速度较慢,点过少会导致参数不完善等问题。默认的采样点数量是10000个。
默认自碰撞矩阵生成器搜索机器人上可以安全禁用碰撞检查的链接对,从而减少运动规划处理时间。当这些链接对总是处于碰撞中,从不发生碰撞,在机器人默认位置发生碰撞时,或者当链接在运动链上彼此相邻时,这些链接对将被禁用。采样密度指定要检查自碰撞的随机机器人位置数。较高的密度需要更多的计算时间,而较低的密度则更有可能禁用不应禁用的对。默认值为10,000次碰撞检查。碰撞检查是并行完成的,以减少处理时间。
点击“Generate Collision Matrix”按钮,系统会自动帮你检测可以优化的选项,产生碰撞矩阵,然后再给你人为决定是否要这样优化: