在这里我之前用的VM12安装成功之后,仿真器机器人会有问题,故把电脑做成双系统的形式来重新安装;

环境:Ubuntu14.04 LTS 32bits

ROS版本:ROS Indigo

在学习本部分之后的内容,请先学习 beginner_Tutorialslearning_tfROS 相关教程。

下面是安装准备

1、在下载机器人程序包之前,我需要先安装一些必要的软件包。直接执行下面的命令进行安装:
注意:如果你还没有使用 ROS 的国内镜像网站,请先配置相关文件。将 ROS 的下载网站设置为国内镜像网站。参考网站:http://blog.csdn.net/github_35160620/article/details/52337181,这里面有讲:如何设置软件源配置文件。)

  1. sudo apt-get install -y ros-indigo-turtlebot-bringup \
  2. ros-indigo-turtlebot-create-desktop ros-indigo-openni-* \
  3. ros-indigo-openni2-* ros-indigo-freenect-* ros-indigo-usb-cam \
  4. ros-indigo-laser-* ros-indigo-hokuyo-node \
  5. ros-indigo-audio-common gstreamer0.10-pocketsphinx \
  6. ros-indigo-pocketsphinx ros-indigo-slam-gmapping \
  7. ros-indigo-joystick-drivers python-rosinstall \
  8. ros-indigo-orocos-kdl ros-indigo-python-orocos-kdl \
  9. python-setuptools ros-indigo-dynamixel-motor-* \
  10. libopencv-dev python-opencv ros-indigo-vision-opencv \
  11. ros-indigo-depthimage-to-laserscan ros-indigo-arbotix-* \
  12. ros-indigo-turtlebot-teleop ros-indigo-move-base \
  13. ros-indigo-map-server ros-indigo-fake-localization \
  14. ros-indigo-amcl git subversion mercurial

ros-by-example包 提供了2个测试用的模拟机器人:TurtleBotPi Robot

2、在必要软件安装好之后,下载rbx1.

  1. $ cd ~/catkin_ws/src
  2. $ git clone https://github.com/pirobot/rbx1.git
  3. $ cd rbx1
  4. $ git checkout indigo-devel
  5. $ cd ~/catkin_ws
  6. $ catkin_make
  7. $ source ~/catkin_ws/devel/setup.bash
  8. $ rospack profile

在ROS By Example包中都是以rbx1开头,使用如下命令

  1. roscd rbx1
  2. cd ..
  3. ls -F

3、为了能在一个模拟的机器人上测试我们的代码,下面来安装模拟器

1)什么是rviz

rvizThe ROS Visualization Tool ,即机器人操作系统3D可视化工具。它的作用就是:一个虚拟世界,用来模拟机器人在现实世界的运行效果。简单的说它就是ROS的一个模拟器软件。

2)安装rviz

(如果在上面已经安装完成了rviz,那么你现在可以跳过:安装rviz)

新开一个终端,执行下面的命令:

  1. $ sudo apt-get install ros-indigo-arbotix-*
  2. $ rospack profile #更新一下ROS内部软件包
  3. #rospack profile功能类似于使用sudo apt-get update更新Linux软件包一样。它的功能是:更新ros软件包

安装完成。

3)举例测试

开两个终端,来运行下面的命令。第1条命令执行后没有什么实际的效果,第2条打开 rviz 软件,你就可以看到效果。
(在第一个命令的时候,你可以运行 TurtleBot 机器人,也可以选择运行 Pi Robot 机器人。)

  1. $ roslaunch rbx1_bringup fake_turtlebot.launch #或者 roslaunch rbx1_bringup fake_pi_robot.launch
  2. $ rosrun rviz rviz -d `rospack find rbx1_nav`/sim.rviz #注意:这条指令中的'`'是键盘左上角'Esc'键下面的那个键

命令执行完,会打开一个窗口: 这就是 Rviz 模拟器 :

为了测试模拟,打开另一个终端并运行以下命令,这个命令会引起模拟机器人以逆时针圆周运动

  1. $ rostopic pub /cmd_vel geometry_msgs/Twist -r '{linear: {x: 0.2, y: 0, z: 0}, angular: {x: 0, y: 0, z: 0.5}}'

这条命令运行后的效果:就是让机器人做画圆运动:

注意:: ” 后面必须要加 空格。如果你不加空格,效果就是下面这个样子:

要停止转动,按下 Ctrl-C 在同一个终端窗口,或者发布空 Twist 消息:

$ rostopic pub -1 /cmd_vel geometry_msgs/Twist '{}'

4、例子讲解

运行的第一条命令: $ roslaunch rbx1_bringup fake_turtlebot.launch 是:启动一个 TurtleBot 机器人的模型。 如果你想使用 Pi Robot 模型,就不执行这条命令,执行:
$ roslaunch rbx1_bringup fake_pi_robot.launch 。 总之,你想启动哪个机器人模型,就执行对应的命令。

Turtlebot机器人 : ————————————————————————-Pi 机器人 :

5、为什么要使用rviz?

你不需要用一个实际的机器人开始ROS学习。ROS包含了许多在虚拟环境中运行的机器人包,所以你可以在拥有真实世界的机器人前,在虚拟环境中测试您的程序。

ROS中有3个可以模拟机器人的模拟器软件:

  • Gazebo
  • Stage
  • ArbotiX(就是RVIz)

你可以任选一个:

Gazebo:可以模拟出完整的现实世界,但是软件使用起来比较复杂。
Stage:简单的2D模拟器,可以管理多个机器人和各种传感器,比如激光传感器。
ArbotiX:它就是Rviz,它跟Gazebo软件比较,它不能模拟物理现象和没有传感器反馈。

ROS提高篇教程,我们就使用rviz,因为它简单,并且我们目前不需要有物理现象在本教程。(在ROS教程实战篇中,我们将学习GazeboGazebo软件对CPU的处理速度要求比较高)。

对应现在来说,我们知道这些就可以了。

ROS-by-example的安装的更多相关文章

  1. Ros使用Arduino 1安装Arduino IDE

    安装Arsuino IDE sudo apt-get install arduino 设置库文件路径 在使用ROS的库文件时,必须在代码的开头包括: #include <ros.h> 接下 ...

  2. ROS indigo Ubuntu14.04 安装问题

    错误信息:Unpacking ros-indigo-desktop-full (1.1.6-0trusty-20181006-135515-0800) ... Errors were encounte ...

  3. ROS indigo 删除和安装

    删除比较容易:  sudo apt-get remove ros-jade-desktop-full 但是如果怕删不干净可以采用: sudo apt-get remove ros-*  ,但是不确定会 ...

  4. ROS:使用ubuntuKylin17.04安装ROS赤xi龟

    使用ubuntuKylin17.04安装 参考了此篇文章:SLAM: Ubuntu16.04安装ROS-kinetic 重复官方链接的步骤也没有成功. 此后发现4.10的内核,不能使用Kinetic. ...

  5. ROS 八叉树地图构建 - 安装 octomap 和 octomap_server 建图包!

    项目要用到八叉树库 Octomap 来构建地图,这里记录下安装.可视化,并启用带颜色的 Octomap 的过程. 一.Apt 安装 Octomap 库 如果你不需要修改源码,可以直接安装编译好的 oc ...

  6. 在树莓派4b上安装 ROS MELODIC 源码安装

    按照以下步骤照做就可以了,很简单的,就是浪费一点点时间罢了.也可以退而求其次,买个树莓派3B+来玩,哈哈. Step 1: Install Dependecies and Download the P ...

  7. ROS 不能再详细的安装教程

    版权声明:本文为博主原创文章,转载请标明出处: http://www.cnblogs.com/liu-fa/p/5779206.html 关于ROS(Robot OS 机器人操作系统),估计看这个博文 ...

  8. ubuntu14上安装ros教程

    安装ROS 官方的安装教程地址 http://wiki.ros.org/cn/jade/Installation/Ubuntu 建议安装indigo版的 下面的教程是安装jade版的 配置Ubuntu ...

  9. SLAM+语音机器人DIY系列:(二)ROS入门——3.在ubuntu16.04中安装ROS kinetic

    摘要 ROS机器人操作系统在机器人应用领域很流行,依托代码开源和模块间协作等特性,给机器人开发者带来了很大的方便.我们的机器人“miiboo”中的大部分程序也采用ROS进行开发,所以本文就重点对ROS ...

  10. ROS安装与卸载

    1 版本选择 ROS 虽说也叫操作系统,但它是寄生在 LINUX 操作系统之下的,所以要求大兄弟你的电脑里至少要先有一个 LINUX 操作系统. 而对 ROS 兼容性最好的当属 Ubuntu 操作系统 ...

随机推荐

  1. 源代码安装Apache、Mysql、PHP

    源代码软件的优点:     获得最新版,能及时修复bug:     能自行修改和定制: 源代码打包形式:     .tar.gz和.tar.bz2格式居多: 完整性校验:     md5sum校验工具 ...

  2. 浅谈负margin

    通常来说margin为正值时,我们很清楚其布局形式,即在border边界线处再往外扩展指定长度.可margin为负又表示什么呢,表示始于border边界线处并向内扩展指定长度,这样,下一个文档流对象便 ...

  3. PHP 如何自定义函数

    PHP 如何自定义函数 使用Function来自定义一个函数:格式如下:function function_name( $data ){ /** * 函数操作 */}注意:函数命名和自定义变量一样.只 ...

  4. 检索COML类工厂中 CLSID为 {00024500-0000-0000-C000-000000000046}的组件时失败,原因是出现以下错误: 80070005" 《终结篇》

    可以看到报出的异常类型为:UnauthorizedAccessException,没有权限访问,表明我们需要配置执行操作账户的COM访问权限. 由于系统是Windows Server 2008 64位 ...

  5. c语言中printf()函数中的参数计算顺序

    今天看到了一个关于printf()函数计算顺序的问题,首先看一个例子: #include<stdio.h> int main() { printf("%d---%d---%d&q ...

  6. Hadoop概念学习系列之关于hadoop-2.2.0和hadoop2.6.0的winutils.exe、hadoop.dll版本混用(易出错)(四十三)

    问题详情是 2016-12-10 23:24:13,317 INFO [org.apache.hadoop.metrics.jvm.JvmMetrics] - Initializing JVM Met ...

  7. BOS物流项目心得

    定区管理 (和分区有何区别) : 区域管理针对自然行政区, 行政区域比较大,不可能让取派员去负责整个行政区域, 需要进行分区,将行政区域细分 ,成为很多小区域(分区), 需要为分区知道取派人员 , 在 ...

  8. [转][JS]修改链接中的参数

    转自:https://blog.csdn.net/weixin_40845192/article/details/81561644 /** * url地址修改 * @param url 待修改url ...

  9. HTTPConnectionPool(host:XX)Max retries exceeded with url 解决方法

    爬虫多次访问同一个网站一段时间后会出现错误 HTTPConnectionPool(host:XX)Max retries exceeded with url '<requests.package ...

  10. C语言怎么简单测试为大小端模式

    作者:Slience_J 原文地址:https://blog.csdn.net/slience_j/article/details/52048267 1.什么是大小端模式? 大端模式,是指数据的高字节 ...