ROS noetic,ROS melodic 安装 MoveIt 并运行
- 前言
- 更新功能包版本
- 下载依赖文件
- 创建工作区和软件源
- 下载源代码
- 安装编译器缓存(可选环节)
- 编译Moveit!
- 安装Moveit!
- 检测是否安装成功
前言
在安装过程中我也碰壁过很多次,尤其实在很多教程中说直接运行: sudo apt-get install ros-noetic-moveit
就可以安装成功,但是试过就知道,ROS melodic版本(包括 noetic 版本)下的Moveit需要首先下载Moveit源码并成功编译后才能够安装成功,否则无法运行roslaunch moveit_setup_assistant setup_assistant.launch
。
更新功能包版本
首先需要确保已安装的软件包为最新版本:
rosdep update
sudo apt-get update
sudo apt-get dist-upgrade
下载依赖文件
Moveit源代码安装需要wstool,catkin_tools和可选的clang三类文件:
sudo apt-get install python3-wstool python3-catkin-tools clang-format-13
创建工作区和软件源
首先创建一个名为ws_moveit的工作区,在该工作区中执行安装操作:
mkdir ~/ws_moveit
cd ~/ws_moveit
注意:下列命令行代码均在 ws_moveit 文件夹中完成。
下载源代码
下载所需的存储库,并从catkin工作区的根目录中进行构建:
wstool init src
wstool merge -t src https://raw.githubusercontent.com/ros-planning/moveit/master/moveit.rosinstall
wstool update -t src
rosdep install -y --from-paths src --ignore-src --rosdistro ${ROS_DISTRO}
catkin config --extend /opt/ros/${ROS_DISTRO} --cmake-args -DCMAKE_BUILD_TYPE=Release
注意:本步骤中的下载可能会因为网络问题漏掉某些软件包,每一步执行完毕后需要注意,若某个命令下有下载失败的软件包需要重复执行该命令
安装编译器缓存(可选环节)
从源代码构建全部甚至部分MoveIt可能需要一个小时。 编译器缓存可以防止重新编译未更改的文件,从而可以将此时间减少到几分钟。 最常用的编译器缓存是适用于gcc和其他类似编译器的ccache。
安装ccache:
sudo apt-get install ccache
安装后需要对ccache进行一系列的配置,要在所有受支持的编译器中自动使用ccache,需要将/ usr / lib / ccache
目录放在PATH之前(对于Debian或Ubuntu以外的系统,此目录可能有所不同)
echo 'export PATH=/usr/lib/ccache:$PATH' >> $HOME/.bashrc
source $HOME/.bashrc
使用以下命令,可以利用ccache查看build过程中命中率和缓存使用情况的统计信息:
ccache --show-stats
大致效果如下:
编译Moveit!
catkin build
在该步骤中需要耗费较长时间(若成功配置ccache可能会缩短部分时间,根据电脑性能决定)
成功编译后的提示如下:
如果出现下面类似存在警告或失败的功能包提示,再次运行编译命令即可:
配置Catkin工作区环境变量:
source devel/setup.bash
安装Moveit!
执行完以上步骤后,运行以下命令即可安装Ros noetic版本下的Moveit!
sudo apt-get install ros-noetic-moveit
如果是ROS melodic,则运行
sudo apt-get install ros-melodic-moveit
。
更新环境变量:
source /opt/ros/noetic/setup.bash
检测是否安装成功
启动Moveit-Setup-Assistant:
roslaunch moveit_setup_assistant setup_assistant.launch
启动成功后出现如下界面,恭喜你已经成功安装Ros Melodic下的Moveit!