引自ROS_WIKI,本文章是经过笔者亲自实践并成功后写的,如有不当,欢迎指正。
0.0 计算机硬件及ROS版本信息:
- CPU:AMD
- 显卡:AMD
- 虚拟机:VMware Workstation14 Pro
- 系统:Ubuntu16.04
- ROS版本:ROS Kinetic
- 时间:2019.4.20
1.1 Ubuntu仓库配置
打开Ubuntu的System Setting,选择Software & Updates打开,在Ubuntu Software选项卡下,勾选"restricted" "universe" "multiverse",顺便也更换了下载源(笔者是刚安装的Ubuntu系统,所以配置了一下下载源为阿里云下载源)。该步骤效果截图如下:
1.2 配置sources.list
快捷键Ctrl+Alt+t打开终端,输入代码:
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
为了能够下载packages.ros.org的软件包,不然后面ROS安装包不能识别。
1.3 设置Keys
继续在终端中输入代码:
sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
这里我没有出现问题。如果出现错误的话,可以将命令前半部分替换为:
hkp://pgp.mit.edu:80
或hkp://keyserver.ubuntu.com:80
1.4 安装
更新软件源
sudo apt-get update
选择安装ROS所有功能(Desktop-Full Install),命令代码如下:
sudo apt-get install ros-kinetic-desktop-full
因为笔者要用ROS系统实现SLAM,因此需要常见的rqt、rviz、navigation等工具包,因此建议选择full安装。当然如果您不需要这些功能包,可以参照ROS_WIKI选择安装。
1.5 初始化rosdep
rosdep工具能够方便地安装依赖项,并且ROS中的一些核心部分的运行需要该工具。安装代码如下:
sudo rosdep init
rosdep update
1.6 环境配置
环境配置相当于Windows系统上的环境变量的配置,比如经常用到ROS中的rosrun rviz rviz
命令来启动rviz工具,如果不配置该环境,rosrun以及rviz系统不识别。
命令代码如下:
echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
source ~/.bashrc
这两句代码非常重要,如果在以后的应用中,发现系统识别不了rosrun等常见的命令,不妨打开.bashrc(gedit ~/.bashrc)文件查看是否已经配置好环境,如果没有,运行上面两句代码即可。
1.7 安装rosinstall工具(optional)
命令代码如下:
sudo apt install python-rosinstall python-rosinstall-generator python-wstool build-essential
至此,ROS已经全部安装成功,可以新建一个工作空间(catkin)测试一下:
mkdir -p ~/my_catkin_ws/src
cd my_catkin_ws
catkin_make
这里新建了一个工作空间(ROS中的工作空间相当于VS中的工程文件夹),同时了新建了一个空的src文件夹,用于可以在src文件夹中编程,目前ROS提供了C++和Python的教程,因此可以用上述两种语言编写代码文件。
catkin_make对该工作空间进行了编译,相当于cmake中的cmake ..
和make
,但catkin_make实现的功能更强大一点。
完成编译后,需要设置环境,原因同上述对ROS的环境配置,只不过路径改为你的工作空间,代码如下:
echo "source ~/my_catkin_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc
如果上述测试代码没有报错,那么ROS可以正常使用了,初学者碰到的大部分问题基本都可以在CSDN中找到答案。