《Moveit-基础篇1》Ubuntu20安装ROS和Moveit
介绍
通过本篇文章学习,你可以收获以下内容
学会在Ubuntu20.04上安装Moveit
学会利用Moveit配置助手生成相关信息
版本平台
系统版本:ubuntu20.04
ROS版本:noetic
Moveit版本:moveit-noetic
一、Moveit的安装
安装Moveit
安装操作系统和ROS
在开始安装Moveit之前,你需要先安装操作系统和ROS,如果不会,可以参考小鱼的一键安装ros
安装moveit
sudo apt-get install ros-noetic-moveit
sudo apt install ros-noetic-joint-state-controller
source /opt/ros/noetic/setup.bash
这里可以用下面的代码查看是否安装成功,并查看moveit!的版本
moveit_version
二、配置MoveIt!Setup Assistant
启动MoveIt!Setup Assistant,这一步需要在新建的工作空间中执行,并且打开rocore ,再source一下,因为下面会需要选择功能包中的urdf文件,不在功能包中会失败。
roscore
source devel/setup.bash
rosrun moveit_setup_assistant moveit_setup_assistant
运行上面代码之后会看到moveit配置助手的相关界面,此时有两个按钮,分别为创建新的MoveIt配置包(Create New MoveIt Configuration Package)或编辑现有的MoveIt配置包(Edit Existing MoveIt Configuration Package)
1·.点击“Create New Moveit Configuration Package”按钮
后面的界面,点击Browse按钮,选择自己的机械臂urdf文件(可以用SolidWorks将所需模型转为urdf文件),点击Load Files将文件加载进来,此时可以看到如下界面
2.自我碰撞检测
下一步点击Self-Collision Matrix产生自碰撞矩阵,直接点击“ 生成碰撞矩阵”按钮,配置助手会自动检测机器人哪些链接会进行自我碰撞
3.添加虚拟关节 virtual joint
这一步骤主要是将机械臂连接到其他部件上,前期只进行机械臂单独的仿真,就不进行设置了
4.添加规划组 planning group
moveit通过定义规划组(planning group)来语义上定义机械臂的各个部分(如手臂和末端执行器)
单击Add Group按钮添加规划组
-
添加手臂规划组arm
-
输入名称 arm
-
运动学求解器选择kdl_kinematics_plugin/KDLKinematicsPlugin
-
Kin.parameters file选择solidworks插件生成的config文件夹里面的文件
-
Group Default Planner选择RRTConnect
然后点击Add Kin.Chain按钮
添加末端执行器规划组
5.添加机器人姿态 Robot Poses
moveit允许添加预设的机器人姿态,方便之后使用,例如在后面进行运动规划的时候,一条语句就可以让机械臂运动到,预设的姿态。
- 选择左侧 Robot Poses
- 点击规划组arm,右侧会出现各个关节的滑条,拖动设置想要的姿态
- 点击Save保存
6.配置末端执行器End Effectors
MoveIt中会给末端执行器一个专门的标签-End Effectors。之前我们已经为末端执行器添加了规划组,这里我们要将其标记为End Effector
选择左侧End Effectors
点击Add End Effector
End Effector Name设置为hand
End Effector Group选择之前添加的末端执行器规划组
父关节选择为机械臂与末端执行器连接的关节
父规划组选择arm1(Tip Link选择为父关节)
7.添加被动关节Passive Joints
如果机器人中有被动的关节(不是主动控制的关节),需要将其添加为被动关节,这样可以告诉MoveIt在规划运动的时候这些关节是无法主动控制的。
我们机械臂中没有被动关节,跳过这一步。
8.填写作者个人信息
点击Author Information,填写作者名称及邮箱,不填写则无法生成相关配置文件
9.生成Config文件
选择一个空文件夹,单击Generate Package保存,将配置助手生成的相关Config文件保存下来
参考链接:https://blog.csdn.net/qq_46067306/article/details/124154634