SLAM+语音机器人DIY系列:(八)高阶拓展——1.miiboo机器人安卓手机APP开发
温馨提示
本篇文章已经收录在我最新出版的书籍《机器人SLAM导航核心技术与实战》,感兴趣的读者可以购买纸质书籍来进行更加深入和系统性的学习,购买链接如下:
android要与ROS通讯,一种是基于rosbridge,另一种是基于rosjava库。
相关参考例子工程
rosbridge例子:
https://github.com/hibernate2011/RosClient
rosbridge(rosbridge_suite)是ros官方为开发者提供的一个用于非ros系统和ros系统进行交互通信的功能包。包括话题的订阅,消息的发布,服务的调用,参数的设置和获取,图片信息的传递等等,都是JSON格式的字符串。获取JSON字符串并将命令发送到ros,反之亦然。
rosjava例子:
https://github.com/rosjava/android_apps
https://github.com/rosjava/android_core
rosjava库,这玩意儿类似于ROS官方支持的rospy roscpp等,也是ROS分布式计算平台的一种language binding。
使用举例:
以android_apps-kinetic为例,首先下载android_apps-kinetic工程https://github.com/rosjava/android_apps
Android Studio导入工程编译运行
启动登入界面:
保证手机跟Raspberry Pi 3连接同一个网络,通过PC 获取Raspberry Pi 3的IP=XXX.XXX.XXX.XXX
修改Master URI选择roscore的URI 点击CONNECT
主界面:
- Set Pose在地图长按 相当于Rviz中的 2D Pose Estimate
- Set Goal在地图长按 相当于Rviz中的 2D Nav Goal
- 左下角Joystick可以发出cmd_vel topic控制小车移动
- Camera View与Map View可以相互切换
- miiboo.apk是由android_apps-kinetic和android_core-kinetic改造而来,基于rosjava库,在原有控制移动、小车位置设定,导航目标设定及路径显示等功能基础上集成了自动获取IP、启动保存建图和代价地图显示选择功能。
miiboo.apk运用介绍:
主界面:
进入建图模式
图层显示选择
后记
参考文献
[1] 张虎,机器人SLAM导航核心技术与实战[M]. 机械工业出版社,2022.
购书链接:https://item.jd.com/13041503.html
下载更多资料:www.xiihoo.com
GitHub源码:https://github.com/xiihoo/Books_Robot_SLAM_Navigation
Gitee源码(国内访问速度快):https://gitee.com/xiihoo-robot/Books_Robot_SLAM_Navigation
知乎教程:https://www.zhihu.com/people/hiram_zhang
视频教程:https://space.bilibili.com/66815220
邮箱:robot4xiihoo@163.com
QQ群:117698356
本作品为”cnblogs@小虎哥哥爱学习"的原创文章,禁止任何形式的转载及抄录,侵权违法行为必究到底