文章目录
ROS安装
配置Ubuntu软件仓库
设置sources.list
设置密钥
更新Debian软件包索引
安装ROS
初始化 rosdep
环境配置
构建工厂依赖
测试安装
开发环境
ROS安装
ROS Kinetic只支持Wily (Ubuntu 15.10), Xenial (Ubuntu 16.04) 和Jessie (Debian 8) 的debian包;这个尤为重要,否则安装不上;
配置Ubuntu软件仓库
依次打开“System Settings”—“Software&Updates”;
选择软件仓库:
在China中找到清华的镜像源:
选择后勾选“Source code”;然后点击“Close”按钮保存;
此时会提示重新载入,点击“reload”;
等待重载完毕即可;这里可能会久一点;
设置sources.list
在桌面上右键,通过“Open Terminal”打开终端;
输入如下指令来设置电脑安装来自mirrors.tuna.tsinghua.edu.cn的软件;需要输入密码,输入即可;
sudo sh -c 'echo "deb http://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
小提示:复制指令到虚拟机中,需要先选中终端窗口,然后点击VMware的“编辑”—“粘贴”才能将指令粘贴进去,直接Ctrl+V是没有效果的
设置密钥
输入如下指令设置密钥,会提示导入成功:
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
更新Debian软件包索引
使用如下指令更新Debian软件包索引:
sudo apt-get update
安装ROS
在ROS中,有很多不同的库和工具。一共有四种默认的配置;
桌面完整版: (推荐) : 包含ROS、rqt、rviz、机器人通用库、2D/3D 模拟器、导航以及2D/3D感知。
sudo apt-get install ros-kinetic-desktop-full
桌面版安装: 包含ROS、rqt、rviz以及通用机器人函数库。
sudo apt-get install ros-kinetic-desktop
基础版安装: (简版) 包含ROS核心软件包、构建工具以及通信相关的程序库,无GUI工具。
sudo apt-get install ros-kinetic-ros-base
单个软件包安装: 你也可以安装某个指定的ROS软件包(使用软件包名称替换掉下面的PACKAGE)。
sudo apt-get install ros-kinetic-PACKAGE
例如:
sudo apt-get install ros-kinetic-slam-gmapping
查找可用软件包:
apt-cache search ros-kinetic
此处使用如下指令安装桌面完整版:
sudo apt-get install ros-kinetic-desktop-full
出现上述界面,输入“Y”继续即可开始下载并安装;
然后吃一包小鱼仔静静地等待,哈哈哈。。。
小鱼仔吃完了,ROS也安装完了!
初始化 rosdep
在开始使用ROS之前你还需要初始化rosdep;
rosdep可以方便在你需要编译某些源码的时候为其安装一些系统依赖,同时也是某些ROS核心功能组件所必需用到的工具。
初始化:
sudo rosdep init
此时会出现报错:Error:cannot download default sources list from:...
使用如下指令打开hosts文件:
sudo gedit /etc/hosts
在文件末尾添加 151.101.84.133 raw.githubusercontent.com,保存关闭文件:
更新
rosdep update
若不成功,可尝试连手机热点或重启虚拟机,还不成功多试几次。
根据笔者多次实测,发现用联通网(宽带/手机热点都可)都可以成功,移动的不行;不知道具体什么原因;
再次使用指令 “sudo rosdep init” 初始化,会提示已经初始化过,没关系,进行下一步;
使用指令更新
rosdep update
此时如果报错
使用如下指令创建文件夹:
sudo mkdir -p /etc/ros/rosdep/sources.list.d
进入目录:
cd /etc/ros/rosdep/sources.list.d
创建文件:20-default.list
sudo gedit 20-default.list
输入如下内容,保存并关闭文件
# os-specific listings first
yaml https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/osx-homebrew.yaml osx
# generic
yaml https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/base.yaml
yaml https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/python.yaml
yaml https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/ruby.yaml
gbpdistro https://raw.githubusercontent.com/ros/rosdistro/master/releases/fuerte.yaml fuerte
# newer distributions (Groovy, Hydro, ...) must not be listed anymore, they are being fetched from the rosdistro index.yaml instead
更新 ,则可以成功;
rosdep update
环境配置
关闭终端,重新打开新终端;
依次使用如下指令配置环境:
echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
source ~/.bashrc
构建工厂依赖
到这里就已经安装了运行核心 ROS 包所需的内容;
为了创建和管理自己的 ROS 工作区,有各种各样的工具和需求分别分布;
例如:rosinstall 是一个经常使用的命令行工具,它使你能够轻松地从一个命令下载许多 ROS 包的源树;
使用如下指令安装这个工具和其他构建ROS包的依赖项:
输入Y继续;
安装完成;
测试安装
重新打开一个终端,使用roscore指令初始化ROS环境;
roscore
会显示ROS的版本、一些节点、端号等信息;
再打开一个新的终端(Termial),使用如下指令,这时弹出一个小海龟窗口:
rosrun turtlesim turtlesim_node
再打开一个新的终端(Termial),使用如下指令开始控制小海龟:
rosrun turtlesim turtle_teleop_key
此时可以使用键盘的上下左右按键来移动小海龟;
注意:需要选中最新打开的这个终端,按方向键才有效,而不是选中小海龟窗口;
再打开一个新的终端(Termial),使用如下指令查看ROS节点信息:
rosrun rqt_graph rqt_graph
如果你能顺利进行到这一步,说明ROS安装成功了。
如果安装过程碰到问题,可查看:Ubuntu16.04安装ROS Kinetic常见问题及解决
开发环境
Author:Lizhifun
OS:Ubuntu 16.04 LTS