ROS进阶学习手记 10 - 用iRobot Create 2搭建自己的TurtleBot(1)- Introduction

原创 2015年11月18日 16:22:43

ROS进阶学习手记 10 - 搭建自己的TurtleBot(1)- Introduction

    时隔一两个月,再次回来继续写自己的ROS学习及应用手记。这一两个月里,我并没有闲着,而是照着《ROS_by_Example_Hydro_Vol1》基本走完了vol1全书所有的例程。但期间所遇到的一些问题,我并没有搞得很清楚。所以回到开始搭建TurtleBot的步骤,来重新梳理如何从攒一个硬件TurtleBot, 到可以执行 SLAM 任务的全过程。

    首先梳理一下手里有的材料:

  • iRobot Create 2 移动机器人驱动平台, 官方链接及资料
  • Mirko Ferrati's irobotCreate2_ROS driver: https://github.com/MirkoFerrati/irobotcreate2ros
  • 基于蓝牙无线通信协议的串口透明传输模块,淘宝链接(及配置用 USB-TTL电平 - RS232协议 串口转换模块)
  • 机器人TurtleBot 控制用 Mini PC,装 ROS Hydro
  • 大容量聚合物锂电池:12V 5.5AH, 用于机器人自带Mini PC的供电
  • 华硕 Xtion Pro Live 三维摄像头
  • 另一台Mini PC及显示器、键鼠
  • 无线路由器,用于组建ROS多机局域网

   系统组成:


    实物照片:

 

    要略过的一些内容:

参考《ROS by Example _ Hydro _ Vol1》书中所述,实现到“7.5  Sending Twist Messages to a Real Robot

中间的过程就按书中来进行即可。涉及到的比如设备驱动、ROS网络配置 等内容可参考本博客前的相关文章。

    ROS网络配置参数:

=--------==----------=---=----
     Log of Configurations:
=--------==----------=---=----

Physical machines:
  PC1 - Black Mini Computer (WLAN Mac: 74:44:01:67:xx:xx)
  PC2 - White Mini Computer (WLAN Mac: a0:21:b7:4e:xx:xx)

Hostname and Hosts file:
  PC1 - my_desktop
  PC2 - my_robot1

The host of ROS (the PC run roscore)
  PC2 - my_robot1

IP Address:
  PC1 - my_desktop - 192.168.1.103
  PC2 - my_robot1  - 192.168.1.102

The Env Vars:
  PC1 	-> $ROS_MASTER_URI = http://my_robot1:11311
	-> $ROS_HOSTNAME = my_desktop

  PC2 	-> $ROS_MASTER_URI = http://my_robot1:11311
	-> $ROS_HOSTNAME = my_robot1

Add the following lines at the end of ~/ .bashrc file:
  PC1: 
	
export ROS_HOSTNAME=my_desktop
	
export ROS_MASTER_URI=http://my_robot1:11311


  PC2:
	
export ROS_HOSTNAME=my_robot1
	
export ROS_MASTER_URI=http://my_robot1:11311



SSH Server:
  PC2:  sudo apt-get install openssh-server
  

    要在这里讨论的问题:

     终于进入正题,和《ROS by Example _ Hydro _ Vol1》(rbx)书中不同的是,这是仿 TurbleBot 的机器人,自己搭建的,所以难免有不兼容问题。

     1. 从《ROS by Example _ Hydro _ Vol1》rbx 书中看来,Turblebot应该是带了一个Gryro Scope 的加速度传感器,并且对它进行了校准,但实际Create2 是通过码盘进行distance的sense.
         在 roslaunch rbx1_bringup turtlebot_minimal_create.launch 这个命令运行时,PC(my_robot1)会通过串口发送所有控制 Create2® 的命令。
         这里调用的顺序是什么?启动了哪些nodes? 参数是如何设置的?

         我们将在下一节讨论:  ROS进阶学习手记 10 - 搭建自己的TurtleBot(2)- 底盘驱动程序, 一个可选的驱动:create_autonomy driver package




版权声明:sonictl原创文章,转载注明,否则读者享用不了后续服务,感谢!

相关文章推荐

TI笔试总结

问:嵌入式系统中的两种处理方式? 中断和s

Java数据结构与算法解析(一)——表

本节我们讨论常见常用的数据结构——表。 如果要通俗简单的说什么是表,那我们可以这样说:按顺序排好的元素集合就是表。表的概述抽象数据类型是带有一组操作的一些对象的结合1、定义: 线性表是一个线性结构...

【turtlebot】陀螺仪的安装以及标定(iRobot Create 底盘+ADXRS610陀螺仪)

一、前言首先说一下我的运行环境 操作系统:UbuntuKylin-14.04 ROS版本:indigo 机器人平台:iRobot Create 陀螺仪:ADXRS610(±300°/sec) ...

智能云机器人初探1-docker的ROS容器对实体的turtlebot的控制

docker中的ROS容器对实体的turtlebot的控制 在智能云服务机器人的研究中,结合DOCKER容器技术是一个研究方向之一,本文阐述了利用容器技术进行一个线下机器人的基本控制方法。
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)