Ubuntu18.04安装ROS melodic

本篇介绍ubuntu18.04安装ROS melodic的方法,以及安装时可能遇到的问题与对应解决办法。

ROS安装有两种方法,一种是软件源安装,另一种是源码编译安装,ROS官网上有关于源码编译安装的说明和资源链接,同时也备注了“不推荐”。官网地址:cn/melodic/Installation/Ubuntu - ROS Wiki

我们通常使用的方法是软件源安装的方法,官网仍然有详细具体的步骤说明,只不过有些步骤可能需要我们“科学”上网。

具体安装办法:

1. 配置Ubuntu软件仓库

配置Ubuntu软件仓库(repositories)以允许使用“restricted”“universe”和“multiverse”存储库。

2. 设置sources.list

设置电脑以安装来自packages.ros.org的软件。

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

 若下载速度缓慢,推荐就近选择一个镜像源替换上面的命令。例如,Tsinghua University为:

sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list'

如果依旧遇到连接问题,请尝试为Ubuntu apt换源(非ROS网站)。 

3. 设置密钥

sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

若无法连接到密钥服务器,可以尝试替换上面命令中的 hkp://keyserver.ubuntu.com:80 为 hkp://pgp.mit.edu:80 。

也可以使用curl命令替换apt-key命令,这在使用代理服务器的情况下比较有用:

curl -sSL 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0xC1CF6E31E6BADE8868B172B4F42ED6FBAB17C654' | sudo apt-key add -

4. 安装

首先,确保你的 Debian 包索引是最新的:

sudo apt update

 在 ROS 中有很多不同的库和工具。官网提供了四种默认选项供你选择。你也可以选择单独安装 ROS 的软件包。这里推荐大家安装桌面完整版。

如果下面的步骤出现问题,可以用这个源来替代上面提到的源:ros-shadow-fixed(英文页面)

1)桌面完整版(推荐): : 包含 ROS、rqt、rviz、机器人通用库、2D/3D 模拟器、导航以及 2D/3D 感知包。

sudo apt install ros-melodic-desktop-full

 2)桌面版: 包含 ROS,rqt,rviz 和机器人通用库

sudo apt install ros-melodic-desktop

3)ROS-基础包: 包含 ROS 包,构建和通信库。没有图形界面工具

sudo apt install ros-melodic-ros-base

4)单独的包: 你也可以安装某个指定的ROS软件包(使用软件包名称替换掉下面的PACKAGE):

sudo apt install ros-melodic-PACKAGE

比如:sudo apt install ros-melodic-slam-gmapping

要查找可用软件包,请运行:

apt search ros-melodic

5. 初始化rosdep

在你使用 ROS 之前,需要初始化 rosdep。rosdep 让你能够轻松地安装被想要编译的源代码,或被某些 ROS 核心组件需要的系统依赖。通过以下指令:

sudo rosdep init
rosdep update

 6. 设置环境变量

将 ROS 环境变量自动添加到新 bash 会话会很方便:

echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
source ~/.bashrc

如果你不只安装了一个 ROS 发行版, ~/.bashrc 只能使用你需要的 ROS 版本的 setup.bash 。

如果你只想设置当前 bash 会话的 ROS 环境变量,只需要输入:

source /opt/ros/melodic/setup.bash

如果你使用 zsh,那么你需要将上述命令改为:

echo "source /opt/ros/melodic/setup.zsh" >> ~/.zshrc
source ~/.zshrc

7. 构建依赖项

sudo apt-get install python-rosinstall python-rosinstall-generator python-wstool build-essential

 ————————————————————分割线——————————————————

可能遇到的问题

1. 如果出现类似如下错误:
W: GPG 错误:http://mirrors.ustc.edu.cn/ros/ubuntu melodic InRelease: 由于没有公钥,无法验证下列签名: NO_PUBKEY F42ED6FBAB17C654
E: 仓库 “http://mirrors.ustc.edu.cn/ros/ubuntu bionic InRelease” 没有数字签名。
N: 无法安全地用该源进行更新,所以默认禁用该源。
N: 参见 apt-secure(8) 手册以了解仓库创建和用户配置方面的细节。

解决办法:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F42ED6FBAB17C654

2.如果出现如下类似问题:
E: 无法获得锁 /var/lib/dpkg/lock-frontend - open (11: 资源暂时不可用)
E: 无法获取 dpkg 前端锁 (/var/lib/dpkg/lock-frontend),是否有其他进程正占用它? 

解决办法:

sudo rm -r -f /var/lib/dpkg/lock-frontend

sudo rm -r -f /var/lib/dpkg/lock

再执行sudo apt-get install ros-melodic-desktop-full一般就能成功安装。

3.如果出现错误:
ERROR: cannot download default sources list from:
https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.list
Website may be down.

解决办法:

cd /etc

sudo gedit hosts

 在打开的文件末尾添加:151.101.84.133 raw.githubusercontent.com。保存退出再重新操作即可。

4.如果出现错误:
ERROR: default sources list file already exists:
/etc/ros/rosdep/sources.list.d/20-default.list
Please delete if you wish to re-initialize

解决办法:20-default.list文件重复,删掉一个就好了。

sudo rm /etc/ros/rosdep/sources.list.d/20-default.list

再重新运行sudo rosdep init可以解决。 

5.如果rosdep update时出现以下错误:

ERROR: error loading sources list: ('The read operation timed out',)

解决办法:网络问题,通常反复执行rosdep update指令或科学上网,就可以执行成功

————————————————————————

安装成功后我们可以通过小海龟的例子验证一下看ROS是否成功安装。

1.首先在第一个terminal启动ROS,

roscore

2.在第二个terminal中运行以下指令,成功的话你会看到一只静止的小海龟。

rosrun turtlesim turtlesim_node 

3.打开第三个terminal,输入以下指令启动小海龟的键盘控制节点:

rosrun turtlesim turtle_teleop_key 

成功的话,此时我们就可以通过键盘来控制小海龟的移动了。此时键盘上的“↑↓←→”分别对应着“前进、后退、左转、右转”的功能,操作后会看到小海龟的行动轨迹,同时第二个terminal中会显示小海龟的坐标位置变化。

到这里,我们的ROS就安装成功了,大家可以试一下,希望对大家有所帮助。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值