原创博客:转载请表明出处:http://www.cnblogs.com/zxouxuewei/  周学伟

安装之前:首先确保已经正常制作了ros工作空间并且安装了rbx1功能包:

cd ~/catkin_ws/src
git clone https://github.com/pirobot/rbx1.git
cd rbx1
git checkout indigo-devel
cd ~/catkin_ws
catkin_make
source ~/catkin_ws/devel/setup.bash
rospack profile

1.安装simulator

sudo apt-get install ros-indigo-arbotix-*

注意:一定要删除任何早期版本的arbotix依赖。

rospack profile

2. 为了确保一切工作,确保roscore运行,然后启动模拟turtlebot如下

roslaunch rbx1_bringup fake_turtlebot.launch
输出信息如下:
.. logging to /root/.ros/log/c0433730-e414-11e5-8d90-c48e8f5baa47/roslaunch-zxwubuntu-Aspire-V3-572G-.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB. started roslaunch server http://zxwubuntu-Aspire-V3-572G:56323/ SUMMARY
======== CLEAR PARAMETERS
* /arbotix/ PARAMETERS
* /arbotix/baud:
* /arbotix/controllers/base_controller/Kd:
* /arbotix/controllers/base_controller/Ki:
* /arbotix/controllers/base_controller/Ko:
* /arbotix/controllers/base_controller/Kp:
* /arbotix/controllers/base_controller/accel_limit: 1.0
* /arbotix/controllers/base_controller/base_frame_id: base_footprint
* /arbotix/controllers/base_controller/base_width: 0.26
* /arbotix/controllers/base_controller/ticks_meter:
* /arbotix/controllers/base_controller/type: diff_controller
* /arbotix/port: /dev/ttyUSB0
* /arbotix/rate:
* /arbotix/read_rate:
* /arbotix/sim: True
* /arbotix/sync_read: True
* /arbotix/sync_write: True
* /arbotix/write_rate:
* /robot_description: <?xml version="1....
* /robot_state_publisher/publish_frequency: 20.0
* /rosdistro: indigo
* /rosversion: 1.11.
* /use_sim_time: False NODES
/
arbotix (arbotix_python/arbotix_driver)
robot_state_publisher (robot_state_publisher/state_publisher) ROS_MASTER_URI=http://localhost:11311 core service [/rosout] found
process[arbotix-]: started with pid []
process[robot_state_publisher-]: started with pid []

3.使用一个模型的pi-机器人,运行命令:

roslaunch rbx1_bringup fake_pi_robot.launch

输出信息如下:

PARAMETERS
* /arbotix/baud:
* /arbotix/controllers/base_controller/Kd:
* /arbotix/controllers/base_controller/Ki:
* /arbotix/controllers/base_controller/Ko:
* /arbotix/controllers/base_controller/Kp:
* /arbotix/controllers/base_controller/accel_limit: 1.0
* /arbotix/controllers/base_controller/base_frame_id: base_link
* /arbotix/controllers/base_controller/base_width: 0.26
* /arbotix/controllers/base_controller/ticks_meter:
* /arbotix/controllers/base_controller/type: diff_controller
* /arbotix/joints/arm_elbow_flex_joint/id:
* /arbotix/joints/arm_elbow_flex_joint/invert: True
* /arbotix/joints/arm_elbow_flex_joint/max_speed:
* /arbotix/joints/arm_elbow_flex_joint/neutral:
* /arbotix/joints/arm_shoulder_lift_joint/id:
* /arbotix/joints/arm_shoulder_lift_joint/invert: True
* /arbotix/joints/arm_shoulder_lift_joint/max_speed:
* /arbotix/joints/arm_shoulder_lift_joint/neutral:
* /arbotix/joints/arm_shoulder_pan_joint/id:
* /arbotix/joints/arm_shoulder_pan_joint/invert: False
* /arbotix/joints/arm_shoulder_pan_joint/max_angle:
* /arbotix/joints/arm_shoulder_pan_joint/max_speed:
* /arbotix/joints/arm_shoulder_pan_joint/min_angle: -
* /arbotix/joints/arm_shoulder_pan_joint/neutral:
* /arbotix/joints/arm_wrist_flex_joint/id:
* /arbotix/joints/arm_wrist_flex_joint/invert: True
* /arbotix/joints/arm_wrist_flex_joint/max_angle:
* /arbotix/joints/arm_wrist_flex_joint/max_speed:
* /arbotix/joints/arm_wrist_flex_joint/min_angle: -
* /arbotix/joints/arm_wrist_flex_joint/neutral:
* /arbotix/joints/gripper_joint/id:
* /arbotix/joints/gripper_joint/invert: False
* /arbotix/joints/gripper_joint/max_angle:
* /arbotix/joints/gripper_joint/max_speed:
* /arbotix/joints/gripper_joint/min_angle: -
* /arbotix/joints/gripper_joint/neutral:
* /arbotix/joints/head_pan_joint/id:
* /arbotix/joints/head_pan_joint/invert: False
* /arbotix/joints/head_pan_joint/max_angle:
* /arbotix/joints/head_pan_joint/max_speed:
* /arbotix/joints/head_pan_joint/min_angle: -
* /arbotix/joints/head_pan_joint/neutral:
* /arbotix/joints/head_tilt_joint/id:
* /arbotix/joints/head_tilt_joint/invert: False
* /arbotix/joints/head_tilt_joint/max_angle:
* /arbotix/joints/head_tilt_joint/max_speed:
* /arbotix/joints/head_tilt_joint/min_angle: -
* /arbotix/joints/head_tilt_joint/neutral:
* /arbotix/port: /dev/ttyUSB0
* /arbotix/rate:
* /arbotix/read_rate:
* /arbotix/sim: True
* /arbotix/sync_read: True
* /arbotix/sync_write: True
* /arbotix/write_rate:
* /robot_description: <?xml version="1....
* /robot_state_publisher/publish_frequency: 20.0
* /rosdistro: indigo
* /rosversion: 1.11.
* /use_sim_time: False

4.接下来,把rviz所以我们可以观察模拟机器人在行动:

rosrun rviz rviz -d `rospack find rbx1_nav`/sim.rviz

5.发布消息,使机器人移动。要测试模拟,打开另一个终端窗口,并运行以下要使模拟机器人在逆时针方向移动:

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

6.需要停止机器人 ,在同一个终端窗口式Ctrl-C,或者发布空Twist message:

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

安装arbotix simulator仿真环境--9的更多相关文章

  1. 给ros安装arbotix simulator仿真环境

    首先下载程序包.编译.安装. cd ~/catkin_ws/src git clone https://github.com/pirobot/rbx1.git cd rbx1 git checkout ...

  2. 安装arbotix simulator仿真环境()

    先安装rbx1功能包: cd ~/catkin_ws/src git clone https://github.com/pirobot/rbx1.git cd rbx1 git checkout in ...

  3. 基于 Mathematica 的机器人仿真环境(机械臂篇)[转]

    完美的教程,没有之一,收藏学习. 目的 本文手把手教你在 Mathematica 软件中搭建机器人的仿真环境,具体包括以下内容(所使用的版本是 Mathematica 11.1,更早的版本可能缺少某些 ...

  4. 基于S7-PLCSIM Advanced搭建S7通信仿真环境

    写在前面: 之前有专门讲过一期如何搭建西门子PLC的S7通信仿真环境,感兴趣的可以点击查看:戳↓ 1.基于TIA搭建西门子PLC仿真环境及通信方案-联合出品 2.手把手教你搭建西门子PLC仿真环境 那 ...

  5. 【新阁教育】穷学上位机系列——搭建STEP7仿真环境

    经常有学员问我,学习上位机要不要买PLC硬件? 我一般的回答是:富则自行购买,穷则搭建仿真. PLC硬件,对于学习上位机来说,是锦上添花的事,经济条件允许,有则更好,条件不允许,我们也可以通过搭建仿真 ...

  6. 【探索之路】机器人篇(5)-Gazebo物理仿真环境搭建_让机器人运动起来

    如果完成了前两步,那么其实我们已经可以去连接我们的现实中的机器人了. 但是,做机器人所需要的材料还没有到,所以我们这里先在电脑平台上仿真一下.这里我们用到的就算gazebo物理仿真环境,他能很好的和R ...

  7. 【转】linux和windows下安装python集成开发环境及其python包

    本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...

  8. 关于JDK 安装,以及Java环境的设置

    关于JDK 安装,以及Java环境的设置 1.下载JDK1.6,选择对应的安装路径 2.配置相应的Java 环境变量 A.属性名称:JAVA_HOME 属性值:C:\Program Files\Jav ...

  9. Greenplum 数据库安装部署(生产环境)

    Greenplum 数据库安装部署(生产环境) 硬件配置: 16 台 IBM X3650, 节点配置:CPU 2 * 8core,内存 128GB,硬盘 16 * 900GB,万兆网卡. 万兆交换机. ...

随机推荐

  1. C#如何以管理员身份运行程序

    在使用winform程序获取调用cmd命令提示符时,如果是win7以上的操作系统,会需要必须以管理员身份运行才会执行成功,否则无效果或提示错误. 比如在通过winform程序执行cmd命令时,某些情况 ...

  2. 戴文的Linux内核专题:01介绍

    转自Linux中国 译者按:本文作者戴文.科利尔.约翰逊(Devyn Collier Johnson)今年才19岁,但是他在Linux内核.人工智能.编程语言方面拥有丰富的经验,本文是其在linux. ...

  3. (转)iOS应用架构谈 view层的组织和调用方案

    前言 <iOS应用架构谈 开篇>出来之后,很多人来催我赶紧出第二篇.这一篇文章出得相当艰难,因为公司里的破事儿特别多,我自己又有点私事儿,以至于能用来写博客的时间不够充分. 现在好啦,第二 ...

  4. Linux下screen命令

    //1.列出当前的screenscreen -ls //2.新建一个screen,直接在命令行键入screen命令 screen -S [会话名称][root@www.lnuxidc.com ~]# ...

  5. Hadoop中常用的InputFormat、OutputFormat(转)

    Hadoop中的Map Reduce框架依赖InputFormat提供数据,依赖OutputFormat输出数据,每一个Map Reduce程序都离不开它们.Hadoop提供了一系列InputForm ...

  6. equals() 与 hashcode() 的区别与联系

    两者都是从Object类继承的方法,Object中equals方法比较的是this和参数传进来的对象的引用地址是否相同,这样的话,equals返回值为true的必要充分条件就是两者指向同一个对象,那么 ...

  7. JS 职责链模式

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  8. GET,POST——简述

    本文主要对GET与POST基本区别进行汇总并掌握. HTTPHTTP(即超文本传输协议)是现代网络中最常见和常用的协议之一,设计它的目的是保证客户机和服务器之间的通信.HTTP 的工作方式是客户端与服 ...

  9. (转)在网页中JS函数自动执行常用三种方法

    原文:http://blog.sina.com.cn/s/blog_6f6b4c3c0100nxx8.html 在网页中JS函数自动执行常用三种方法 在网页中JS函数自动执行常用三种方法 在HTML中 ...

  10. 黑马程序员——【Java基础】——面向对象(一)概述、类与对象、继承、抽象类、接口、多态、内部类

    ---------- android培训.java培训.期待与您交流! ---------- 一.面向对象概述 1.面向对象:是一个很抽象的概念,它相对面向过程而言,是一种程序设计的思想. 2.面向对 ...