第 2 课 ROS 系统安装和环境搭建
1.版本选择
不同的 Ubuntu 安装的 ROS 版本不同,其中 Ubuntu18.04 的 ROS 对应版本为Melodic。
Ubuntu版本 | ROS版本 |
---|---|
Ubuntu16.04 | Kinetic |
Ubuntu18.04 | Melodic |
Ubuntu20.04 | Noetic |
2.检查 Ubuntu 的软件和更新源
- 找到系统中的“软件和更新”。
- 确保勾上互联网下载的选项,下载源更换成国内的,以阿里云为例。
3.设置 ROS 的下载源
3.1 设置国内下载源
打开命令行终端,输入指令:
sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list'
按下回车,接着输入虚拟机的密码“ubuntu”(此密码为用户自行设置的,我们这里的密码为 ubuntu)。
3.2 设置公匙
输入指令
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
3.3 更新软件包
输入指令sudo apt update
。
4. 安装 ROS
打开命令行终端,输入指令
sudo apt install ros-melodic-desktop-full
等待下载安装完成,根据网络状况不同,安装过程大概要 10 分钟。
5. 设置环境变量
打开命令行终端,依次输入指令
echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
source ~/.bashrc
完成环境变量配置。
6. 安装 rosdep
输入指令
sudo apt-get install python3-rosdep
按下回车,安装 rosdep;出现安装确认提示,输入“Y”即可。
7. 初始化
- 输入指令
cd /etc/ros/rosdep/sources.list.d
进入“sources.list.d”文件夹。
- 输入指令
sudo gedit 20-default.list
,编辑此文件。
- 将原文件中的内容替换为以下内容(直接复制、粘贴,不需要换行,也不要手动输入)。
# os-specific li# os-specific listings first yaml
https://gitee.com/wybros/rosdistro/raw/master/rosdep/osx-homebrew.yaml osx # generic yaml
https://gitee.com/wybros/rosdistro/raw/master/rosdep/base.yaml yaml
https://gitee.com/wybros/rosdistro/raw/master/rosdep/python.yaml yaml
https://gitee.com/wybros/rosdistro/raw/master/rosdep/ruby.yaml gbpdistro
https://gitee.com/wybros/rosdistro/raw/master/releases/fuerte.yaml fuerte # newer distributions
(Groovy, Hydro, ...) must not be listed anymore, they are being fetched from the rosdistro
index.yaml instead
- 修改过程中,终端会出现警告,属于正常现象,不必理会
- 替换完成后,直接点击保存再关闭文件。
- 输入指令“cd /usr/lib/python2.7/dist-packages/rosdep2/”,进入到“rosdep2”目录下
- 输入指令“sudo gedit gbpdistro_support.py”按下回车,若提示有输入虚拟机密码的提示,我们输入“ubuntu”(此密码为用户自行设置的,我们这里的密码为 ubuntu),按下回车,即可打开“gbpdistro_support.py”文 件,找到“FUERTE_GBPDISTRO_URL”代码。
- 将“https://raw.githubusercontent.com/ros/rosdistro/”修改为
https://gitee.com/wybros/rosdistro/raw/
,(只修改下图红框所示内容,后续内容无需更改)修改完成后点击保存,关闭即可
- 接着输入指令
sudo gedit rep3.py
,打开“rep3.py”文件,找到“REP3_TARGETS_URL”代码。
- 将“https://raw.githubusercontent.com/ros/rosdistro/”修改为“https://gitee.com/wybros/rosdistro/raw/”,(只修改下图红框所示内容,后续内容无需更改)修改完成后点击保存,关闭即可。
- 接着输入指令
sudo gedit sources_list.py
,打开“sources_list.py”文件,找到“DEFAULT_SOURCES_LIST_URL”代码。
- 将“https://raw.githubusercontent.com/ros/rosdistro/”修改为
https://gitee.com/wybros/rosdistro/raw/
,(只修改下图红框所示内容,后续内容无需更改)修改完成后点击保存,关闭即可。
- 输入指令
cd /usr/lib/python2.7/dist-packages/rosdistro/
,进入“rosdistro”目录下。
- 输入指令
sudo gedit __init__.py
,进入“init.py”文件,找到“DEFAULT_INDEX_URL”代码。
- 将“https://raw.githubusercontent.com/ros/rosdistro/”修改为
https://gitee.com/wybros/rosdistro/raw/
,(只修改下图红框所示内容,后续内容无需更改)修改完成后点击保存,关闭即可。
8.更新
打开新的命令行终端,输入指令rosdep update
更新。
出现如下信息,则代表更新成功了。
若出现下图读取超时的提示,可能是网络原因,用户可多输入几次rosdep update尝试更新;若还是更新不了,用户可检查“1.7 初始化”的内容,确保修改的内容无误,后再次输入“rosdep update”进行更新。