在Ubuntu14.04中安装ROSIndigo

本文主要介绍一下ROS是什么,如何在Ubuntu中安装ROS,以及如何基于ROSGazebo模拟器中通过键盘控制TurtleBot移动。


ROS是什么

ROSRobotOperatingSystem(机器人操作系统)的简写,是一个面向机器人的开源元操作系统(open-sourcemeta-operatingsystem)。它能够提供类似传统操作系统的诸多功能,如硬件抽象、底层设备控制、进程间消息传递和程序包管理等。此外,它还提供相关工具和库,用于获取、编译、编辑代码以及在多个计算机之间运行程序完成分布式计算。ROS的运行架构是一种使用ROS通信模块实现模块间P2P的松耦合的网络连接的处理架构,它执行若干种类型的通讯,包括基于服务的同步RPC(远程过程调用)通讯、基于Topic的异步数据流通讯,还有参数服务器上的数据存储。

Ubuntu中安装ROS

因为ROSIndigo只支持Saucy(13.10) Trusty(14.04),故此处介绍在Ubuntu14.04中如何安装ROSIndigo。打开终端后,按照下面步骤将命令复制(ctrl+c)、粘贴(ctrl+shift+v)到终端。

注:要用国外的源才能安装

第一步:添加sources.list

一旦添加了正确的软件源,操作系统就知道去哪里下载程序,并根据命令自动安装软件。

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

第二步:添加keys

sudoapt-key adv --keyserver hkp://pool.sks-keyservers.net --recv-key421C365BD9FF1F717815A3895523BAEEB01FA116

第三步:安装

首先确认你的Debian的软件包索引是最新的。

sudoapt-get update

推荐桌面完整版安装:因为其包含所有的packages

sudoapt-get install ros-indigo-desktop-full

此处安装需要等一段时间。可能有几个包安装失败,如下:

根据提示,重新更新并安装,即重复第三步。

第四步:初始化rosdep

rosdep可以方便在你需要编译某些源码的时候为其安装一些系统依赖,同时也是某些ROS核心功能组件所必需用到的工具。

sudorosdep init

rosdepupdate

第五步:环境设置。

添加ROS的环境变量,这样,当你打开你新的shell时,你的bash会话中会自动添加环境变量。

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

source~/.bashrc

第六步:安装rosinstall

rosinstall命令是一个使用的非常频繁的命令,使用这个命令可以轻松的下载许多ROS软件包。

sudoapt-get install python-rosinstall

至此,ROS安装完毕。

用键盘控制TurtleBot移动

首先安装一个catkin_tools

sudoapt-get install python-catkin-tools

然后安装turtlebot软件:

sudoapt-get install ros-indigo-turtlebot ros-indigo-turtlebot-appsros-indigo-turtlebot-interactions ros-indigo-turtlebot-simulatorros-indigo-kobuki-ftdi ros-indigo-rocon-remoconros-indigo-rocon-qt-library ros-indigo-ar-track-aprslvar-msgs

安装结束,启动turtlebot仿真环境:

小提示:双击Tab键可以显示补全命令名,如下:


启动仿真环境:

roslaunchturtlebot_gazebo turtlebot_world.launch

启动后会弹出一个Gazebo三维场景(初次启动比较慢),如下:

此处可能会出现如下报错:

Invalid<arg> tag: environment variable 'TURTLEBOT_GAZEBO_WORLD_FILE'is not set.

Argxml is <arg default="$(env TURTLEBOT_GAZEBO_WORLD_FILE)"name="world_file"/>

Thetraceback for the exception was written to the log file

则重新进行上节安装ROS中的第五步,即重新配置环境变量。

Gazebo界面操作方法:左键单击拖动——平移,中键单击拖动——动态观察,滚轮缩放,右键单击拖动——缩放。

下面演示用键盘控制turtlebot

此时在终端单击右键打开一个标签页:

输入命令:

roslaunchturtlebot_teleop keyboard_teleop.launch

我们将看到移动键,加减速键,停止键,如下:

下面你就可以用键盘控制turtlebot的移动啦~注意:只能在终端界面用键盘控制turtlebot移动,无法在Gazebo界面控制,如下:




猜你喜欢

转载自blog.csdn.net/dzhongjie/article/details/80396307
今日推荐