turtlebot 配合Android应用 Make a Map可以允许用户通过手机操纵机器人扫描室内地图并在手机上显示出来,效果图如下:
ROS机器人与安卓设备的通讯协作是通过rocon实现的,细节这里不作描述。本文适合已经对该技术非常熟悉的人阅读。
1. 问题描述
下载安卓rocon remocon和Make a map并安装,在turtlebot上启动机器人:
$roslaunch turtlebot_bringup minimal.launch
该命令可以启动turtlebot的轮子驱动并加在Android interaction 应用rapps. 该命令可以成功启动的前提条件是正确配置的硬件环境变量,把roomba和XTion pro Live指定给ROS.
接下来在安卓终端打开Rocon remocon应用,添加一个master URI,把turtlebot的IP输入,这时就可以看到该节点信息了,点击进入后选择角色”Android pair”. 就可以看到大量的应用,启动”Make a map”就可以看到操作界面了,摇控行走可以看到室内图片信息显示出来了,但是地图上一片空白。
2. 问题分析
首先查看地图数据到底生产没有,地图应该是由 /map 主题发布出来的,这时候我们看一些该主题:
$ rostopic echo /map
发现居然没有任何数据,不甘心--列出所有主题:
$rostopic list
诡异的结果出现了,你会发现大部分的topic都被加了一个前缀:”turtlebot”. 地图数据很可能发布到了”/turtlebot/map”上了:
rostopic echo /