Ubuntu18.04+Ros Melodic安装Moveit框架+Moveit搭建机械臂模型(一)(持续更新)

本文详细介绍了在Ubuntu18.04和ROS Melodic环境下安装Moveit框架的全过程,包括安装前的准备、源码下载、依赖安装、编译配置等关键步骤,帮助读者顺利搭建机器人运动规划环境。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、Moveit框架介绍

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

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

同时针对ROS的不同版本(如Kinetic,Indigo,Melodic),Moveit的安装方式有所不同,其中因为Moveit在Melodic版本下开源较晚,在ROS Melodic版本下安装会遇到各类问题,现为读者提供一类能够在ROS Melodic下完整安装Moveit的教程:

二、安装准备工作

在安装前,一定要保证自己的软件源已经选择最优软件源,否则后续大量的下载任务会慢到怀疑人生
打开 [软件和更新]–>点击[下载自]–>[选择最佳服务器]–>更新并退出
在这里插入图片描述

三、安装Moveit源码

若还未成功安装Ros Melodic,可参考文章:Ubuntu18.04+Ros Melodic安装及环境配置+Ros安装常见问题解决方法

更新功能包版本

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

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 

下一步中所需的$ {ROS_DISTRO}变量将会从已配置好的环境变量中选取

下载源代码

下拉所需的存储库,并从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 ~/ws_moveit/devel/setup.bash # or .zsh, depending on your shell

四、安装Moveit!

执行完以上步骤后,运行以下命令即可安装Ros Melodic版本下的Moveit!

sudo apt-get install ros-melodic-moveit

可选:(安装PR2的MoveIt相关的包)

sudo apt-get install ros-melodic-moveit-pr2

更新环境变量:

source /opt/ros/melodic/setup.bash

特别说明:
在安装过程中我也碰壁过很多次,尤其实在很多教程中说直接运行
sudo apt-get install ros-melodic-moveit就可以安装成功,但是试过就知道,Ros Melodic版本下的Moveit需要首先下载Moveit源码并成功编译后才能够安装成功,否则会出现

   下列软件包有未满足的依赖关系:
    ros-melodic-moveit-full : 依赖:xxxxx 但是它将不会被安装
  E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。

的软件依赖问题,解决起来很棘手,一旦成功编译Moveit源码后,即可解决Ros Melodic直接安装Moveit产生 软件依赖问题。

五、检测安装是否成功

尝试运行配置助手(Setup Assistant):
首先打开roscore

roscore

然后启动Moveit-Setup-Assistant:

roslaunch moveit_setup_assistant setup_assistant.launch

启动成功后出现如下界面,恭喜你已经成功安装Ros Melodic下的Moveit!
在这里插入图片描述关于如何导入机械臂模型以及如何在机械臂模型中运行moveit相关算法在后续的文章中会持续更新。

<think>好的,我需要帮助用户在Ubuntu 18.04安装和配置ROS Melodic以及UR5机械的相关环境。首先,我得回忆安装ROS Melodic的标准步骤,以及可能遇到的依赖问题。根据用户提供的引用,特别是引用[1]和[4],涉及到使用apt安装ROS包,比如ros-melodic-moveit-simple-controller-manager。还有引用[3]提到Melodic和Kinetic的资源较多,用户可能需要这些资源来配置UR5。 首先,安装ROS Melodic的标准流程应该是设置sources.list,添加密钥,更新apt,然后安装完整版ROS。接着初始化rosdep,这步有时候会遇到网络问题,可能需要多次尝试或者换源。然后配置环境变量,自动添加到.bashrc中。这些步骤用户可能已经了解,但需要详细说明。 接下来是配置UR5的支持包。用户可能需要的包包括universal_robot的仓库,这通常托管在GitHub上。需要克隆相应的仓库到工作空间的src目录,然后安装依赖,这里可能涉及到rosdep install。之后用catkin_make编译整个工作空间。编译完成后,需要source setup.bash使环境变量生效。这部分可能需要检查是否有遗漏的依赖,比如moveit相关的包,引用[4]提到了安装ros-melodic-moveit-simple-controller-manager,所以用户如果遇到依赖问题,可能需要手动安装这个包。 用户可能会遇到的问题包括:依赖安装失败,编译错误,或者运行示例时的权限问题。例如,某些ROS节点可能需要执行权限,或者USB设备的权限问题。此外,虚拟机环境下的配置可能有额外的步骤,如引用[3]提到的使用虚拟机安装Ubuntu系统,可能需要检查虚拟机的USB设置是否正确。 另外,用户可能希望使用MoveIt来控制UR5,所以需要确认moveit的包是否安装正确。引用[4]中的命令是手动安装依赖的例子,这可能是在编译过程中发现缺失依赖时的解决方案。因此,在指导用户时,需要强调在编译前运行rosdep install,同时也要准备好手动安装某些依赖的可能。 最后,测试部分建议用户运行示例启动文件,并检查UR5在Gazebo或Rviz中的表现。如果出现模型无法加载的情况,可能需要检查模型路径是否正确,或者相关的模型包是否安装。此外,用户可能需要参考官方文档或社区资源,如引用[3]提到的持续更新的教程,来获取最新信息或解决特定问题。 总结步骤应该是:安装ROS Melodic → 创建Catkin工作空间 → 克隆UR5相关包 → 安装依赖 → 编译 → 配置环境 → 测试。需要确保每步都清晰,并提示可能的问题和解决方法。同时,根据用户提供的引用,适当引用相关指令,如手动安装依赖的命令,以增加答案的可信度。</think>### 在Ubuntu 18.04安装配置ROS MelodicUR5机械的步骤 #### 1. 安装ROS Melodic **步骤说明**: - **添加ROS仓库**: 配置软件源并添加密钥,确保系统能访问ROS Melodic的官方包: ```bash sudo sh -c &#39;echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list&#39; sudo apt-key adv --keyserver &#39;hkp://keyserver.ubuntu.com:80&#39; --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654 sudo apt update ``` - **安装完整版ROS**: 安装基础功能包及常用工具(如MoveIt、Gazebo插件): ```bash sudo apt install ros-melodic-desktop-full ``` - **初始化rosdep**: 用于管理依赖关系(若网络超时可尝试多次执行或更换国内镜像源): ```bash sudo rosdep init rosdep update ``` - **配置环境变量**: 将ROS环境变量自动添加到终端: ```bash echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc source ~/.bashrc ``` #### 2. 配置UR5机械支持包 **步骤说明**: - **创建Catkin工作空间**: 用于编译UR5相关ROS包: ```bash mkdir -p ~/catkin_ws/src cd ~/catkin_ws/ catkin_make ``` - **克隆UR5官方仓库**: 从GitHub获取UR机械ROS驱动和模型文件: ```bash cd ~/catkin_ws/src git clone https://github.com/ros-industrial/universal_robot.git ``` - **安装依赖项**: 使用`rosdep`自动安装依赖(若失败需手动补充安装,如引用[4]提到的包): ```bash rosdep install --from-paths src --ignore-src -y # 手动补充依赖示例(若提示缺失) sudo apt install ros-melodic-moveit-simple-controller-manager # 引用[4] ``` - **编译工作空间**: 确保所有包正确编译: ```bash cd ~/catkin_ws catkin_make source devel/setup.bash ``` #### 3. 验证与测试 **步骤说明**: - **启动UR5仿真**: 在Gazebo中加载UR5模型: ```bash roslaunch ur_gazebo ur5.launch ``` - **使用MoveIt控制**: 在Rviz中通过MoveIt规划运动: ```bash roslaunch ur5_moveit_config ur5_moveit_planning_execution.launch sim:=true ``` - **物理硬件连接**: 若需连接真实UR5机械,需配置URCap和网络通信(参考[官方文档](https://github.com/UniversalRobots/Universal_Robots_ROS_Driver))。 #### 常见问题解决 - **依赖安装失败**: 根据编译错误提示手动安装缺失包,例如: ```bash sudo apt install ros-melodic-industrial-core # 引用[1]类似格式 ``` - **虚拟机兼容性**: 若使用虚拟机(如VMware),需启用USB 3.0支持以确保机械通信正常(引用[3]提到虚拟机安装场景)。 - **权限问题**: 添加用户到`dialout`组以访问串口: ```bash sudo usermod -a -G dialout $USER ``` #### 相关资源推荐 - **GitHub仓库**: [universal_robot](https://github.com/ros-industrial/universal_robot) 提供UR5的ROS驱动和配置文件。 - **教程参考**: [ROS Wiki - UR5 Tutorial](http://wiki.ros.org/ur5/Tutorials) 包含详细的使用指南。
评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值