TurtleBot的SLAM地图构建
来源:互联网 发布:德军步兵班 知乎 编辑:程序博客网 时间:2024/05/16 17:02
NOTE:我们使用的是TurtleBot2.TurtleBot2所使用的控制基座是Cokubi,它不需要进行额外的里程计和陀螺仪标定。
预设置
TurtleBot端和PC端
都需要安装ROS,安装过程自行查看相关教程。
都需要安装相关功能包,执行一下命令:
sudo apt-get install ros-indigo-turtlebot ros-indigo-turtlebot-apps ros-indigo-turtlebot-interactions ros-indigo-turtlebot-simulator ros-indigo-kobuki-ftdi ros-indigo-rocon-remocon ros-indigo-rocon-qt-library ros-indigo-ar-track-alvar-msgs
- TurtleBot和PC需要连接在同一个局域网内。
PC端
除了上面的操作之外,PC端还需要做必要的网络配置和环境配置。
- 时间同步,通过安装chrony来实现:
sudo apt-get install chrony
- 设置ROS_MASTER_URI,ROS_HOSTNAME,ROS_IP环境变量
添加以下命令到~/.bashrc底部:
export ROS_MASTER_URI=http://<robot_name>.local:11311export ROS_HOSTNAME=<pc_name>export ROS_IP=<pc_ip_address>
请将上述命令中的<robot_name>
,<pc_name>
,<pc_ip_address>
分别替换成你的机器人上位机的名字,你电脑的名字,你电脑的ip地址。
- 设置TURTLEBOT_3D_SENSOR环境变量
将以下命令添加到~/.bashrc底部:
export TURTLEBOT_3D_SENSOR=astra
NOTE:第3步需要根据具体情况来设置。安装1.1中的相关软件之后,会自动设置一系列的以TURTLEBOT开头的环境变量,TURTLEBOT_3D_SENSOR就是其中一个,而且其默认值为:asus_xtion_pro。由于我们使用的3D摄像头是astra,所以需要将其改成astra。
启动gmapping程序
在TurtleBot端
- 启动TurtleBot
roslaunch turtlebot_bringup minimal.launch
NOTE:启动之前确保Kobuki控制基座已经开启。
- 运行gmapping程序
roslaunch turtlebot_navigation gmapping_demo.launch
在PC端
- 启动rviz
# Pre-Groovyrosrun rviz rviz -d `rospack find turtlebot_navigation`/nav_rviz.vcg# Groovy or laterroslaunch turtlebot_rviz_launchers view_navigation.launch
在TurtleBot端
驱动机器人运动:
- 远程控制TurtleBot运动:
roslaunch turtlebot_teleop keyboard_teleop.launch --screen
然后根据命令行产生的提示指令对TurtleBot进行控制。
- 保存地图成文件:
rosrun map_server map_saver -f ~/tmp/my_map
上述命令中的地图保存路径可自行设定。
NOTE:不要关闭gmapping直到地图已经保存。在地图构建过程中遇到问题,可参考问题。
参考网站:
原网站:http://wiki.ros.org/turtlebot_navigation/Tutorials/Build%20a%20map%20with%20SLAM
TurtleBot启动教程:http://wiki.ros.org/turtlebot_bringup/Tutorials
远程控制教程:http://wiki.ros.org/turtlebot_teleop/Tutorials
PC端网络配置:http://wiki.ros.org/turtlebot/Tutorials
工作站(PC)安装:http://wiki.ros.org/turtlebot/Tutorials
- TurtleBot的SLAM地图构建
- 地图构建SLAM网络资源
- 即时定位与地图构建(SLAM)的相关研究
- 即时定位与地图构建(SLAM)的相关研究
- 即时定位与地图构建(SLAM)的相关研究
- 即时定位与地图构建(SLAM)的相关研究
- 即时定位与地图构建(SLAM)的相关研究
- 即时定位与地图构建(SLAM)的相关研究
- 即时定位与地图构建(SLAM)的相关研究
- 即时定位与地图构建(SLAM)与基于视觉的SLAM(VSLAM)
- 同步定位与地图构建SLAM过程
- TurtleBot基于已知地图的自主导航
- ROS进阶学习笔记(11)- Turtlebot Navigation and SLAM - ROSMapModify - ROS地图修改
- 移动机器人同步定位与地图构建SLAM网络资源
- 移动机器人同步定位与地图构建SLAM网络资源
- SLAM中栅格地图和拓扑地图的优缺点
- (二)SLAM拓扑地图(地图的优化)
- ROS进阶学习笔记(11)- Turtlebot Navigation and SLAM
- TCP的三次握手与四次挥手
- SQLite入门介绍(二)
- 二叉树的路径和
- js随机生成模拟数据
- 【IMWel训练作业】vue select component
- TurtleBot的SLAM地图构建
- Android studio怎么上传代码到Conding
- Select组件
- 量化交易 Alpha Algo 1. 简单的双均线策略
- 《重构-改善既有代码的设计》-第1例:租赁影片(2)
- MySQL数据表相关操作-完整性约束条件
- ThreadLocal与局部变量
- 马士兵java学习之路
- 分享:初涉Pysqlite遇到的问题