原创博客:转载请表明出处: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. 【codevs1036】商务旅行 LCA 倍增

    1036 商务旅行  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 钻石 Diamond 题目描述 Description 某首都城市的商人要经常到各城镇去做生意,他们按自己的 ...

  2. C# IList<T>转为DataTable

    public class WebUtil { /// <summary> /// 转换IList<T>为DataTable/// </summary> /// &l ...

  3. C# WebBrowser NativeMethods

    using System; using System.Collections.Generic; using System.Drawing; using System.Linq; using Syste ...

  4. 基于反射的通过set方法的依赖注入,可以看成一种设计模式,自己来用

    非常好用,在properties文件中配置字符串和类名之间的对应,在程序里读取文件,找到类名,通过反射,达到调用set方法的目的,然后直接将自己的指向其他类的对象的引用赋值,指向实体对象. 比如use ...

  5. EF学习笔记(一)

    EF(EntityFramwork)实体框架:主要是将实体类(EntityClass)和数据表(Table)进行映射(Map). EF核心对象: DbContext   (数据访问核心对象)      ...

  6. jQuery中 end(); 的用法

    jQuery中的end()方法的意思 选取某个元素,查找选取其子元素,然后再回过来选取这个元素.用例子说明了一下: 比如HTML代码: <p><span>Hello</s ...

  7. C++11 std::copy

    这个函数并不是简单的 while(first != last) { *result = *first; result++; first++; } 事实上这种写法是最具普适性的,值要求inputIter ...

  8. Interview---一道有趣的推理题

    题目描述: 一个岛上有100个人,他们的眼睛只有两种颜色,蓝色和红色.95个人是黑色,其余5人是红色. 他们有个宗教信仰,从不照镜子,所以他们自己不知道自己的眼睛的颜色.但是能看到其他人的眼睛. 他们 ...

  9. gen already exists but is not a source folder ZT

    解决方法:1. 右键点击工程,选择 "Properties"2. 选择左边的 "Java Build Path" 3. 打开 "Source" ...

  10. Linux iptables重启后失效

    解决办法如下: 输入完iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080 后 执行iptables-s ...