《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

### 如何在ROS中正确配置安装MoveIt #### 安装MoveIt 为了在ROS环境中成功安装MoveIt,可以按照官方推荐的方式进行源码编译或者通过二进制包直接安装。以下是两种常见的方法: 1. **使用APT工具安装预构建的二进制包** 对于大多数用户来说,最简单的安装方式是利用`apt-get`命令来安装已有的二进制包。这适用于Ubuntu操作系统下的ROS版本支持情况。 ```bash sudo apt update sudo apt install ros-$ROS_DISTRO-moveit ``` 这里的`$ROS_DISTRO`应替换为当前使用的ROS发行版名称,例如`noetic`或`humble`[^4]。 2. **从源代码编译安装** 如果需要最新的功能或是特定定制化需求,则可以从源代码编译MoveIt。此过程涉及创建一个新的catkin工作区并克隆MoveIt仓库到其中。 ```bash mkdir -p ~/ws_moveit/src && cd ~/ws_moveit/src git clone https://github.com/ros-planning/moveit.git -b $ROS_DISTRO-devel cd .. rosdep install --from-paths src --ignore-src -r -y catkin_make source devel/setup.bash ``` 同样需要注意的是,这里的分支名应当匹配所用的ROS版本,比如对于Humble版本就是`humble-devel`[^5]。 #### 配置MoveIt 完成上述任一安装步骤之后,下一步是对具体机器人模型进行MoveIt的一键配置向导设置。以Panda机械臂为例说明基本流程: - 使用以下指令启动一键配置脚本: ```bash roslaunch moveit_setup_assistant setup_assistant.launch ``` 此时会弹出图形界面引导用户逐步定义规划组、碰撞矩阵以及其他必要参数[^6]。 - 当所有设定完成后保存生成的功能包至指定路径下,默认情况下它会被存放在用户的home目录中的某个子文件夹里。例如针对Universal Robots系列设备可能位于 `~/ws_moveit/src/universal_robot/ur5_moveit_config/` 路径之下[^7]。 - 修改高级选项如自定义运动规划算法,在对应的yaml配置文档内添加新的条目即可实现扩展功能。参照之前提到的内容修改`ompl_planning.yaml` 文件加入新类型的RRT变种算法定义[^8]: ```yaml cqRRTConnect: type: geometric::cqRRTConnect range: 0.0 # Max motion added to tree. => maxDistance_ default: 0.0, if 0.0, set on setup() ``` 最后验证整个环境搭建是否正常工作的常用测试手段便是执行演示发射器查看效果: ```bash roslaunch panda_moveit_config demo.launch ``` 亦或者是结合Gazebo仿真平台一起加载虚拟场景模拟真实世界交互行为: ```bash roslaunch panda_moveit_config demo_gazebo.launch ``` 以上即完成了基于选定硬件平台上的基础部署与初步调试作业[^9]。 ### 注意事项 确保所有的依赖项都已经被妥善解决;另外考虑到不同版本之间可能存在兼容性差异,请始终查阅最新发布的官方文档获取权威指导信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值