使用moveit_setup_assistant配置机械臂(下)
序
在开篇博主先说一下博主使用的moveit_setup_assistant用的ubuntu16.04+ros_kinetic版本配置的,因为使用相同的方法在melodic中配置,无论如何也不能与gazebo联动,各位可以装个虚拟机在kinetic中配置完再拿到melodic中使用,或者在20.04环境中配置。
开头介绍一下博主踩过的坑,接下去介绍如何进行配置,这里还是在18.04中为例进行配置,各位在自行配置的时候参照相同步骤即可。
启动moveit! setup assistant
在之前的环境配置篇已经配置好ros以及moveit,打开配置助手
打开一个终端
roscore
新开终端
rosrun moveit_setup_assistant moveit_setup_assistant
点击creat New Moveit Configuration Package,出现Load a URDF or COLLADA Robot Model界面,点击Browse,选择之前配置好的sunday.xacro文件
点击Load Files,会在侧面出现机械臂模型,接下去开始配置
self-collision
自碰撞检测主要用于检测哪些link之间会发生碰撞,点击Generate Collision Matrix,就会进行自碰撞检测。
Virtual Joint
这里上篇已经配置了机械臂与world装配了,这里的虚拟关节可以不用进行配置,故此处无需配置虚拟关节。
Planning Groups
创建规划组,由于该机械臂并没有配置夹爪,因此该处只需要配置机械臂本体规划组即可,
点击Add Group,选择如下图进行配置
继续点击Add Kin. Chain,Base Link选择base_link,Tip Link选择link_6,点击save退出
此时已经配置完机械臂规划组
Robot Poses
此处是用于定义机械臂位姿,此处定义位姿的好处是在后期写脚本可以通过API简单的让机械臂运行到你现在设置的位姿,在此处定义两个位姿,scan_food和scan_face,分别用于机械臂识别食物的位姿和识别人脸的位姿。
End Effectors
由于该机械臂的末端执行器是吸盘,因此该步骤可跳过。
跳过部分
这之后的Passive Joints、ROS Control、Simulation、3D Perception都可以跳过配置,这些需要自己在文件中进行配置,因为用该助手配置尚存在问题,可后续进行手动配置。
接着自行配置作者信息,这里也进行跳过。
Configuration Files
生成配置文件,点击Browse选择一个工作空间作为路径并将其命名为sunday_moveit_config,点击Generate Package在之前选择路径下生成sunday_moveit_config。(注意上面的作者信息一定要填)
功能包测试
编译上述工作空间,并运行demo.launch,出现以下界面
roslaunch sunday_moveit_config demo.launch
在Query栏,将Goal State设置为scan_food,在Commands栏点击Plan & Execute,可以看到rviz中的机械臂运行到之前设定的scan_food姿态。
小结
至此使用moveit! setup assistant对机械臂配置完毕,然而要想令moveit!与gazebo中的机械臂联动还需要对sunday_moveit_config功能包进行进一步的配置,这部分内容将在下一章进行介绍。