Ubuntu 的 ROS 操作系统 turtlebot3 SLAM仿真

引言

  • SLAM(同步定位与地图构建)在Gazebo仿真环境中的应用能够模拟真实机器人进行环境建图和导航。通过SLAM仿真,开发者可以在虚拟环境中测试算法,而不必依赖真实硬件,便于调试与优化。
  • Gazebo提供了多个虚拟环境,用户可以选择合适的环境来测试SLAM算法。与实际机器人操作类似,SLAM仿真涉及环境创建、SLAM节点启动、遥控操作等步骤,帮助用户在虚拟环境中完成定位与地图构建任务。
  • 本文将介绍如何在Gazebo中使用TurtleBot3进行SLAM仿真,包括启动仿真环境、运行SLAM节点、遥控机器人以及保存地图的操作。

在这里插入图片描述


学习目标

  • 掌握在Gazebo中使用TurtleBot3进行SLAM仿真的基本操作。
  • 学会启动TurtleBot3仿真环境,并使用SLAM节点进行环境建图。
  • 掌握遥控TurtleBot3进行探索,并保存生成的地图文件。
  • 安装与自己Ubuntu版本对应的ROS版本,本文ROS Noetic Ninjemys 主要支持 Ubuntu 20.04 (Focal Fossa),其他ROS 1 版本也适用。安装前请详细参考 Ubuntu版本、ROS版本与Python 版本之间的关系

在这里插入图片描述


学习内容

1 注意事项

1.1 兼容性注意事项
  • 注意:本文内容对应的是远程PC(桌面或笔记本电脑),用于控制TurtleBot3。 请勿将此指令应用到TurtleBot3机器人上。
  • 首次启动模拟可能需要一些时间来完成环境设置。
  • SLAM 仿真前请详细参考 ———>专栏: Linux系统之Ubuntu系统安装
  • SLAM 仿真前请详细参考 ———>专栏: Turtlebot3 PC端ROS环境搭建与仿真
1.2 ROS 系统安装、turtlebot3环境搭建与gazebo仿真

1.2.1 安装 ROS 系统与搭建turtlebot3环境

1.2.2 turtlebot3 gazebo仿真

1.2.3 Turtlebot3 buger 硬件与操作平台


2 启动Gazebo仿真环境

# 设置TurtleBot3模型
export TURTLEBOT3_MODEL=burger

# 启动TurtleBot3 World环境
roslaunch turtlebot3_gazebo turtlebot3_world.launch

TurtleBot3 默认世界Gazebo仿真环境如下图所示:

在这里插入图片描述


3 运行SLAM节点

在新的终端中启动SLAM节点,默认使用Gmapping算法进行建图。

# 设置TurtleBot3模型
export TURTLEBOT3_MODEL=burger

# 启动SLAM节点
roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=gmapping

RViz可视化界面如下图所示:

在这里插入图片描述


4 启动遥控节点

在新的终端中启动遥控节点,通过键盘控制TurtleBot3的运动。

# 设置TurtleBot3模型
export TURTLEBOT3_MODEL=burger

# 启动遥控节点
roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch

键盘远程控制方法如下图所示:

在这里插入图片描述
控制机器人

  • w/x:增加/减少线速度
  • a/d:增加/减少角速度
  • 空格键、s:紧急停止
  • CTRL-C:退出遥控

SLAM 的 RViz 可视化界面如下图所示:

在这里插入图片描述


5 保存地图

5.1 键盘远程控制TurtleBot3

当地图构建完成后,在新的终端中使用以下命令保存地图到本地,默认地址为 /home ,命名为map.pgm。

# 保存地图
rosrun map_server map_saver -f ~/map

构建的地图保存如下图所示:

在这里插入图片描述


小结

  • 本文详细介绍了如何在Gazebo中使用TurtleBot3进行SLAM仿真,从启动仿真环境到保存生成的地图,帮助开发者掌握SLAM仿真流程。
  • 通过遥控TurtleBot3进行探索,并利用SLAM算法构建地图,能够为后续的导航和路径规划任务打下基础。

欢迎大家评论留言!!!


友情提示:

  • 专栏:Turtlebot3 PC端ROS环境搭建与仿真
  • 下一节:Ubuntu 的 ROS 2 操作系统 turtlebot3 gazebo仿真

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值