1.1 设置网络时间协议(NTP,Network Time Protocol)
在ROS官网的安装项目中并没有包括这一项,设置这个,是为了缩短PC间通信中的ROS Time误差。设置方法是安装chrony之后用ntpdate命令指定ntp服务器即可。这就是通过给不同的PC指定相同的NTP服务器,将时间误差缩短到最小的方法。启动我们虚拟机中的unbuntu系统,在ubuntu的界面上直接右击打开终端,在终端输入以下命令,输入密码。
sudo apt-get intall -y chrony ntpdate
安装完成之后输入再次输入下面的代码,这样就完成了这一块内容。
sudo ntpdate -q ntp.ubuntu.com
1.2. 添加代码列表
在roc-latest.list添加ROS版本库,设置你的电脑可以从 packages.ros.org 接收软件.在终端输入如下命令。
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
1.3 添加公钥(key)
目的是为了从ROS存储库下载功能包,公钥可以参考官网wiki页面(http://wiki.ros.org/cn/kinetic/Installation/Ubuntu)。
sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
1.4 更新软件包索引
下载内容不小,需要等待一段时间。
sudo apt-get update && sudo apt-get upgrade -y
1.5 上面的内容完成之后,我们就可以开始安装我们的kinetic了,这里建议大家安装完整版的,使用以下命令。
sudo apt-get install ros-kinetic-desktop-full
1.6 完成上面的安装之后,只包含基本的rqt,笔者建议大家在执行以下命令,来安装额外的rqt相关的功能包。
sudo apt-get install ros-kinetic-rqt*
1.7 初始化rosdep
在使用ros之前,必须初始化rosdep。rosdep是一个通过在使用或编译ros的核心组件时轻松安装依赖包来增强用户便利的功能。
在运行过程中,可能会提示你找不到命令,不要慌,先安装rosdep,命令为sudo apt install rospack-tools,在运行下面的语句就可以了。
sudo rosdep init
rosdep update
1.8 安装rosinstall
这是安装ros各种功能包的程序。他被频繁使用,因此必须安装。
sudo apt-get install python-rosinstall
到上面为指我们的ros kinetic就安装好了,让我们用以下命令来测试一下。
首先我们先加载环境设置文件
source /opt/ros/kinetic/setup.bash
接着我们需要创建并初始化工作目录
ROS使用一个名为catkin的ROS专用构建系统。此过程只需要一次即可。
运行结束之后,会在home目录下生成catkin_ws
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
catkin_init_workspace
cd ~/catkin_ws/
catkin_make
如果构建成功,在终端输入以下ls命令会看到如下结果,多了两个文件夹。
接下来再加载与catkin构建系统相关的环境文件。
source ~/catkin_ws/devel/setup.bash
现在就可以测试安装结果了,在终端运行roscore,如下图所示,说明你安装成功了。
要加载一个配置文件,每次打开新的终端都需要运行它。
source /opt/ros/kinetic/setup.bash
source ~/catkin_ws/devel/setup.bash
为了避免咋个繁琐的任务,我们应该把这两行命令添加到配置文件里面去,所以使用文本编辑器gedit程序来加载bashrc文件。会出现如下页面。
gedit ~/.bashrc
可以看到这里面已经有很多的配置了,前面的配置我们都不要去修改,直接拉到最下面,添加如下代码。(xxx.xxx.xxx.xxx是用户的自己的IP地址,如何查询IP地址请自行百度)。输入所有内容后,保存退出。
# Set ROS Kinetic
source /opt/ros/kinetic/setup.bash
source ~/catkin_ws/devel/setup.bash
#Set ROS Network
export ROS_HOSTNAME=xxx.xxx.xxx.xxx
export ROS_MASTER_URI=http://${ROS_HOSTNAME}:11311
#Set ROS alias command
alias cw='cd ~/catkin_ws'
alias cs='cd ~/catkin_ws/src'
alias cm="cd ~/catkin_ws && catkin_make"
为了让修改完之后的内容生效,输入如下命令。
source ~/.bashrc
上面都配置好之后,关闭所有终端,重新打开一个新的终端,运行roscore,来测试是否成功。