ROS机器人编程实战
上QQ阅读APP看书,第一时间看更新

1.6 安装ROS包

在安装ROS包之前,需要确保所使用的Debian包索引是最新的。

$ sudo apt-get update

在ROS中包含很多不能完全与ARM相匹配的库和工具,因此我们不能进行桌面完整版(Desktop-Full)的安装。这里只能对所需的ROS包进行单独的安装。

我们可以安装ros-base(准系统),它包含了ROS包、构建和通信库,但是不包含图形化操作工具(当允许操作时使用ENTER(Y))。

$ sudo apt-get install ros-<ros_version>-ros-base

另外,我们也可以尝试去安装桌面系统,它包括ROS、rqt、RViz和机器人通用库。

$ sudo apt-get install ros-<ros_version>-desktop

1.6.1 添加单个软件包

我们可以使用如下命令来安装一个指定的ROS包:

$ sudo apt-get install ros-<ros_version>-PACKAGE

使用以下命令查找可用的包:

$ apt-cache search ros-<ros_version>

1.6.2 初始化rosdep

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

$ sudo apt-get install python-rosdep 
$ sudo rosdep init 
$ rosdep update

1.6.3 环境配置

现在我们已经完成了在ARM平台上安装ROS的操作。大部分的ROS脚本和可执行文件都安装在/opt/ros/<ros_version>中。

如果要访问这些脚本和可执行文件,需要将ROS环境变量添加到bash会话中。我们需要使用source命令来指定下面的bash文件:

$ source /opt/ros/<ros_version>/setup.bash

如果每次启动新的shell时,ROS环境变量都会自动添加到BASH会话中,这是十分方便的:

$ echo "source /opt/ros/<ros_version>/setup.bash" >> ~/.bashrc
$ source ~/.bashrc

如果你安装有多个ROS版本,需要使用source命令来指定你当前使用版本所对应的setup.bash。

$ source /opt/ros/<ros_version>/setup.bash

1.6.4 获取rosinstall

rosinstall是ROS中一个独立的常用命令行工具,有了它,只要用一条命令,你就可以很容易为指定功能包下载完整的源码树。

该工具是基于Python的,你可以使用以下命令来安装它:

$ sudo apt-get install python-rosinstall

下面给出一个基本的例子。首先我们在命令行(shell)上运行ROS核心:

$ roscore

然后在另一个命令行(shell)中,发布一条Pose信息:

$ rostopic pub /dummy geometry_msgs/Pose Position: x: 3.0 y: 1.0 z: 2.0 Orientation: x: 0.0 y: 0.0 z: 0.0 w: 1.0 -r 8

接下来,在桌面系统(位于同一网络中)设置ROS_MASTER_URI指向我们的ARM平台(IP为192.168.X.X)。

在笔记本计算机中添加以下内容:

$ export ROS_MASTER_URI=http://192.168.1.6:11311

我们将会看到从ARM平台向笔记本计算机发布的pose。

最后向笔记本计算机中添加以下内容:

$ rostopic echo -n2 /dummy Position: x: 1.0 y: 2.0 z: 3.0 Orientation: x:0.0 y: 0.0 z: 0.0 w: 1.0 ---