Ubuntu18.04安装Moveit框架

简介

Moveit是一个由一系列移动操作的功能包组成的集成化开发平台,提供友好的GUI,是目前ROS社区中使用度排名前三的功能包,Moveit包含以下三大核心功能,并集成了大量的优秀算法接口:

  • 运动学:KDL,Trac-IK,IKFast...
  • 路径规划:OMPL,CHMOP,SBPL..
  • 碰撞检测:FCL,PCD...

一、更新功能包版本

首先需要确保已安装的软件包为最新版本:

复制代码
rosdep update
sudo apt-get update
sudo apt-get dist-upgrade 

二、下载依赖文件

Moveit源代码安装需要wstool,catkin_tools和可选的clang三类文件:

复制代码
 sudo apt-get install python-wstool python-catkin-tools clang-format-3.9 

三、创建工作区和软件源

首先创建一个名为ws_moveit的工作区,在该工作区中执行安装操作:

复制代码
mkdir ~/ws_moveit
cd ~/ws_moveit 

四、加载必要的环境变量

根据安装的ROS版本,为ROS工作区提供源以加载必要的环境变量:

  • melodic版本选择:

    source /opt/ros/melodic/setup.bash

  • kinetic版本选择:

    source /opt/ros/kinetic/setup.bash

五、下载源代码

下载所需的存储库,并从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 

注意:

  • "wstool update -t src"步骤可能会因为网络问题漏掉某些软件包,若有下载失败的软件包需要重复执行该命令。一共有9个包:geometric_shapes, moveit, moveit_msgs, moveit_resources, moveit_tutorials, moveit_visual_tools, panda_moveit_config, rviz_visual_tools, srdfdom
  • "rosdep install -y --from-paths src --ignore-src --rosdistro {ROS_DISTRO}"中的 {ROS_DISTRO}变量将会从已配置好的环境变量中选取

可能遇到问题:缺少依赖

复制代码
ERROR: the following packages/stacks could not have their rosdep keys resolved
to system dependencies:
moveit_resources_dual_panda_moveit_config: Cannot locate rosdep definition for [joint_state_publisher_gui]
panda_moveit_config: Cannot locate rosdep definition for [franka_description]
moveit_resources_panda_moveit_config: Cannot locate rosdep definition for [joint_state_publisher_gui]
moveit_tutorials: Cannot locate rosdep definition for [joy]
pilz_industrial_motion_planner: Cannot locate rosdep definition for [code_coverage]
moveit_servo: Cannot locate rosdep definition for [rosparam_shortcuts]

解决方法:sudo apt-get install ros-你的ROS版本-你缺少的东西

例如上述错误:

复制代码
sudo apt-get install ros-melodic-joint-state-publisher-gui
sudo apt-get install ros-melodic-joy
sudo apt-get install ros-melodic-rosparam-shortcuts

六、安装编译器缓存(可选环节)

从源代码构建全部甚至部分MoveIt可能需要一个小时。 编译器缓存可以防止重新编译未更改的文件,从而可以将此时间减少到几分钟。 最常用的编译器缓存是适用于gcc和其他类似编译器的ccache。

安装ccache:

复制代码
sudo apt-get install ccache

安装后需要对ccache进行一系列的配置,要在所有受支持的编译器中自动使用ccache,需要将/ usr / lib / ccache目录放在PATH之前。

复制代码
echo 'export PATH=/usr/lib/ccache:$PATH' >> $HOME/.bashrc
source $HOME/.bashrc 

使用以下命令,可以利用ccache查看build过程中命中率和缓存使用情况的统计信息:

复制代码
ccache --show-stats

七、编译Moveit

复制代码
catkin build

可能遇到问题:

  • 缺少包

解决方法:

复制代码
sudo apt-get install ros-melodic-包名

注:报错中缺少的包名中的"_"改为"-"

八、配置Catkin工作区环境变量

复制代码
source ~/ws_moveit/devel/setup.bash # or .zsh, depending on your shell

九、安装Moveit

复制代码
sudo apt-get install ros-melodic-moveit
sudo apt-get install ros-melodic-moveit-pr2

十、更新环境变量

复制代码
source /opt/ros/melodic/setup.bash

十一、检测安装是否成功

首先打开roscore

复制代码
roscore

然后启动Moveit-Setup-Assistant:

复制代码
roslaunch moveit_setup_assistant setup_assistant.launch

启动成功后出现如下界面,恭喜你已经成功安装Moveit!

相关推荐
小樱花的樱花几秒前
Linux 多线程编程:互斥锁(Mutex)详解
linux·c语言·开发语言
TlSfoward2 分钟前
TLSFOWARD自动化抓包工具
运维·自动化
麦兜和小可的舅舅3 分钟前
从原理到实战:Linux 系统性能诊断核心指标全解析及生产系统故障分析复盘
大数据·linux·运维
云飞云共享云桌面34 分钟前
河北钣金工厂10个solidworks设计共享一台高性能服务器的云桌面方案
运维·服务器·3d·自动化·负载均衡·制造
wbs_scy1 小时前
仿 muduo 高并发服务器项目:实现 Connection 连接管理模块,并整合 Any 上下文
运维·服务器·网络
mounter6251 小时前
质检员与超能引擎的碰撞:KASAN 护航 eBPF JIT 的技术演进与安全抉择
linux·ebpf·linux kernel·kernel·kasan
风123456789~1 小时前
【Linux专栏】history常用命令
linux·运维·服务器
熬夜苦读学习1 小时前
基于websocket的多用户五子棋网页游戏
linux·服务器·网络·websocket·网络协议·游戏·五子棋
爱学习的程序媛1 小时前
SIP抓包调试、故障排查与项目上线实战手册
运维·wireshark·呼叫中心·联络中心·sip协议·sip信令
fpcc2 小时前
Linux 7.1介绍
linux·运维