ROS安装与卸载
《ROS入门-理论与实践》视频教程镇楼
注:下载文件,备份保存,为下次安装,防范于未然
文章目录
1.1.1 安装虚拟机软件
1.下载virtualbox
安装 virtualbox 需要先访问官网,下载安装包,官网下载地址:https://www.virtualbox.org/wiki/Downloads
2.安装virtualbox
virtualbox 安装比较简单,如果没有特殊需求,双击安装文件,一直 “下一步” 即可。
安装完毕后,虚拟机已经可以正常启动了,接下来需要使用其虚拟出一台计算机
1.1.2 虚拟一台主机
使用 virtual 虚拟计算机的过程也不算复杂,只需要按照提示配置其相关参数即可
1.1.3 安装ubuntu
1.ubuntu安装
首先下载 Ubuntu 的镜像文件,链接如下:http://mirrors.aliyun.com/ubuntu-releases/20.04/;
然后,配置虚拟主机,关联 Ubuntu 镜像文件:
启动后,开始配置 ubuntu 操作系统:
安装过程中,断开网络连接,可以提升安装速度:
安装完毕后,会给出重启提示,点击重启确定按钮即可:
到目前为止 VirtualBox 已经正常安装了 ubuntu, 并启动成功。
2.使用优化
为了优化 ubuntu 操作的用户体验,方便虚拟机与宿主机的文件交换以及 USB 设备的正常使用,还需做如下操作:
1.安装虚拟机工具
重启使之生效,选择菜单栏的自动调整窗口大小
,然后ubuntu 桌面会自动使用窗口大小:右ctrl + F
全屏。
2.启动文件交换模式
3.安装扩展插件
先去 virtualbox 官网下载扩展包
在 virtual box 中添加扩展工具
在虚拟机中添加 USB 设备
重启后,使用ll /dev/ttyUSB* 或 ll /dev/ttyACM*
即可查看新接入的设备。
4.其他
其他设置,比如输入法可以根据喜好自行下载安装。
ubuntu 20.04 鼠标右击没有创建文件选项,如果想要设置此选项,可以进入主目录
下的模板
目录,使用 gedit 创建一个空文本文档,以后,鼠标右击就可以添加新建文档选项,并且创建的文档与当前自定义的文档名称一致
…
1.1.4 安装 ROS
Ubuntu 安装完毕后,就可以安装 ROS 操作系统了,大致步骤如下:
- 配置ubuntu的软件和更新;
- 设置安装源;
- 设置key;
- 安装;
- 配置环境变量。
1.配置ubuntu的软件和更新
配置ubuntu的软件和更新,允许安装不经认证的软件。
首先打开“软件和更新”对话框,具体可以在 Ubuntu 搜索按钮中搜索。
打开后按照下图进行配置(确保勾选了"restricted", “universe,” 和 “multiverse.”)
2.设置安装源
官方默认安装源:
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
或来自国内清华的安装源
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'
或来自国内中科大的安装源
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'
PS:
- 回车后,可能需要输入管理员密码
- 建议使用国内资源,安装速度更快。
3.设置key
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
4.安装
首先需要更新 apt(以前是 apt-get, 官方建议使用 apt 而非 apt-get),apt 是用于从互联网仓库搜索、安装、升级、卸载软件或操作系统的工具。
sudo apt update
等待…
然后,再安装所需类型的 ROS:ROS 多个类型:Desktop-Full、Desktop、ROS-Base。这里介绍较为常用的Desktop-Full(官方推荐)安装: ROS, rqt, rviz, robot-generic libraries, 2D/3D simulators, navigation and 2D/3D perception
sudo apt install ros-noetic-desktop-full
等待…(比较耗时)
友情提示: 由于网络原因,导致连接超时,可能会安装失败,如下所示:可以多次重复调用 更新 和 安装命令,直至成功。
5.配置环境变量
配置环境变量,方便在任意 终端中使用 ROS。
echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
source ~/.bashrc
卸载
如果需要卸载ROS可以调用如下命令:
sudo apt remove ros-noetic-*
注意: 在 ROS 版本 noetic 中无需构建软件包的依赖关系,没有rosdep
的相关安装与配置。
另请参考:http://wiki.ros.org/noetic/Installation/Ubuntu。
后记
6.安装构建依赖
在 noetic 最初发布时,和其他历史版本稍有差异的是:没有安装构建依赖这一步骤。随着 noetic 不断完善,官方补齐了这一操作。
首先安装构建依赖的相关工具
sudo apt install python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool build-essential
ROS中使用许多工具前,要求需要初始化rosdep(可以安装系统依赖) – 上一步实现已经安装过了。
sudo apt install python3-rosdep
初始化rosdep
sudo rosdep init
rosdep update
如果一切顺利的话,rosdep 初始化与更新的打印结果如下:
但是,在 rosdep 初始化时,多半会抛出异常。
问题:
原因:
境外资源被屏蔽。
解决:
百度或google搜索,解决方式有多种(https://github.com/ros/rosdistro/issues/9721),可惜在 ubuntu20.04 下,集体失效。
新思路:将相关资源备份到 gitee,修改 rosdep 源码,重新定位资源。
实现:
1.先打开资源备份路径:https://gitee.com/zhao-xuzuo/rosdistro,打开 rosdistro/rosdep/sources.list.d/20-default.list文件留作备用(主要是复用URL的部分内容:gitee.com/zhao-xuzuo/rosdistro/raw/master)。
2.进入"/usr/lib/python3/dist-packages/" 查找rosdep中和raw.githubusercontent.com
相关的内容,调用命令:
find . -type f | xargs grep "raw.githubusercontent"
3.修改相关文件,主要有: ./rosdistro/init.py、./rosdep2/gbpdistro_support.py、./rosdep2/sources_list.py 、./rosdep2/rep3.py。可以使用sudo gedit
命令修改文件:
文件中涉及的 URL 内容,如果是:raw.githubusercontent.com/ros/rosdistro/master
都替换成步骤1中准备的gitee.com/zhao-xuzuo/rosdistro/raw/master
即可。
修改完毕,再重新执行命令:
sudo rosdep init
rosdep update
sdistro/init.py、./rosdep2/gbpdistro_support.py、./rosdep2/sources_list.py 、./rosdep2/rep3.py。可以使用sudo gedit
命令修改文件:
文件中涉及的 URL 内容,如果是:raw.githubusercontent.com/ros/rosdistro/master
都替换成步骤1中准备的gitee.com/zhao-xuzuo/rosdistro/raw/master
即可。
修改完毕,再重新执行命令:
sudo rosdep init
rosdep update
就可以正常实现 rosdep 的初始化与更新了。