3.2 安装并配置ROS环境

3.2.1 安装Ubuntu

由于ROS系统运行在Linux发行版Ubuntu上,在安装ROS之前,首先要安装Ubuntu,其参数见表3-2。安装步骤如下。

表3-2 Ubuntu系统参数

①准备一个4GB以上的U盘。

②下载Ubuntu最新镜像,下载地址为http://www.ubuntu.org.cn/。

③下载虚拟光驱软件Daemon Tools,下载地址自行寻找。

④加载Ubuntu ISO镜像到虚拟光驱。加载完后应如图3-4所示。

图3-4

⑤打开wubi.exe,这是Ubuntu提供的一款在Windows下简便安装的工具,新手可以使用wubi进行安装。

⑥分区。分出一个至少20GB的磁盘用来安装Ubuntu,Windows下可以使用Disk Genius或者Windows自带的工具进行分区,具体分区方法这里不过多赘述。

⑦打开wubi.exe,见图3-4。

⑧选择刚刚分好的磁盘、语言、安装大小,桌面环境按照默认设置,用户名和密码自行决定,然后单击“安装”按钮(图3-5),完成后重启,即可进入Ubuntu,见图3-6。

图3-5

图3-6 Ubuntu启动界面

3.2.2 安装并配置ROS环境

ROS系统参数见表3-3。

表3-3 ROS系统参数

我们已经预编译好Ubuntu平台的Debian软件包,直接安装编译好的软件包比从源码编译安装更加高效,这也是我们在Ubuntu上的首选安装方式。

首先在Ubuntu中打开终端(Terminal),在搜索框中输入“Terminal”,然后单击“搜索结果”,打开方法如图3-7所示。

图3-7

(1)配置Ubuntu软件仓库

配置Ubuntu软件仓库(repositories),以允许“restricted”“universe”和“multiverse”这三种安装模式,可以按照ubuntu中的配置指南(https://help.ubuntu.com/community/Repositories/Ubuntu)来完成配置。

(2)添加sources.list

配置电脑使其能够安装来自packages.ros.org的软件,ROS Indigo仅仅支持Ubuntu版本Saucy(13.10)和Trusty(14.04)。

在终端中输入以下命令:

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

注意:强烈建议使用国内或者新加坡的镜像源,这样能够大大提高安装下载速度。

修改方法:在System Settings中,选择Software& Updates,在Ubuntu Software中,选择Download from,挑选速度最快的网站,见图3-8。在国内,一般阿里云或者网易163的速度比较快。

图3-8

(3)添加keys

输入以下命令:

sudo apt-key adv--keyserver hkp://pool.sks-keyservers.net--recv-key 0xB01-FA116

(4)安装

首先,确保Debian软件包索引是最新的。

sudo apt-get update

如果使用Ubuntu Trusty 14.04.2并在安装ROS的时候遇到依赖问题,可能还得安装一些其他系统依赖。

sudo apt-get install xserver-xorg-dev-lts-utopic mesa-common-dev-lts-utopic libxatracker-dev-lts-utopic libopenvg1-mesa-dev-lts-utopic libgles2-mesa-dev-lts-utopic libgles1-mesa-dev-lts-utopic libgl1-mesa-dev-lts-utopic libgbm-dev-lts-utopic libegl1-mesa-dev-lts-utopic

如果使用Ubuntu 14.04,请不要安装以上软件,否则会导致X server无法正常工作或者尝试只安装下面这个工具来修复依赖问题。

sudo apt-get install libgl1-mesa-dev-lts-utopic

ROS中有很多各种函数库和工具,提供了四种默认安装方式,用户也可以单独安装某个指定软件包。

①桌面完整版安装(推荐) 包含ROS、rqt、rviz、通用机器人函数库、2D/3D仿真器、导航以及2D/3D感知功能。

sudo apt-get install ros-indigo-desktop-full

②桌面版安装 包含ROS、rqt、rviz以及通用机器人函数库。

sudo apt-get install ros-indigo-desktop

③基础版安装 包含ROS核心软件包、构建工具以及通信相关的程序库,无GUI工具。

sudo apt-get install ros-indigo-ros-base

④单个软件包安装 用户也可以安装某个指定的ROS软件包(使用软件包名称替换掉下面的PACKAGE)。

sudo apt-get install ros-indigo-PACKAGE

例如:

sudo apt-get install ros-indigo-slam-gmapping

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

apt-cache search ros-indigo

(5)初始化rosdep

在开始使用ROS之前还需要初始化rosdep。rosdep可以在用户编译某些源码的时候为其安装一些系统依赖,同时也是某些ROS核心功能组件所必需用到的工具。

sudo rosdep init

rosdep update

(6)环境设置

如果每次打开一个新的终端时,ROS环境变量都能够自动配置好(即添加到bash会话中),那将会方便得多。

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

source~/.bashrc

注:如果安装多个ROS版本,~/.bashrc必须只能source当前使用版本所对应的setup.bash。

如果用户只想改变当前终端下的环境变量,可以执行以下命令

source/opt/ros/indigo/setup.bash

(7)安装rosinstall

rosinstall是ROS中一个独立分开的常用命令行工具,它能够通过一条命令给某个ROS软件包下载很多源码树。

要在Ubuntu上安装这个工具,请运行:

sudo apt-get install python-rosinstall

安装好之后在Terminal中运行roslanuch,出现图3-9所示结果,表示安装正常。

图3-9