01
Gazebo与ROS2环境搭建
Ubuntu系统安装 · ROS2 Humble · Gazebo Ignition Fortress · 环境变量配置与验证
环境基础
02
Gazebo基础操作与界面认识
启动与关闭 · 世界(World)概念 · 模型插入与操作 · GUI面板功能
界面入门
03
创建第一个仿真世界
SDF文件格式入门 · 构建地面与光照 · 保存与加载自定义世界
SDF世界
04
机器人模型基础
URDF文件详解 · link与joint定义 · 在Gazebo中加载机器人模型
URDF模型
05
传感器仿真基础
添加LiDAR · IMU · 摄像头模型到URDF
传感器仿真
06
ROS2与Gazebo通信桥梁
ros2_gazebo_package · Topic/Service映射 · 数据流验证
通信桥梁
07
控制机器人移动
差速轮驱动插件 · 速度指令发布 · 仿真运动观察
控制运动
08
SLAM技术概述
SLAM定义 · 定位与建图 · Gmapping/Cartographer/Hector简介
SLAM理论
09
激光雷达数据处理
/scan话题 · LaserScan消息 · rviz2可视化激光数据
LiDARROS2
10
里程计基础
轮式里程计原理 · /odom话题 · Gazebo中获取里程计
里程计odom
11
坐标变换基础
TF2库 · 静态坐标变换 · rviz2中查看TF树
TF坐标
12
Gmapping SLAM算法原理
粒子滤波 · 工作流程 · 参数配置详解
Gmapping粒子滤波
13
在Gazebo中运行Gmapping
安装slam_gmapping · 启动文件配置 · 实时建图
Gmapping实战
14
Cartographer SLAM算法原理
图优化SLAM · 局部/全局优化 · 子图(Submap)机制
Cartographer图优化
15
在Gazebo中运行Cartographer
安装cartographer_ros · .lua配置 · 建图与可视化
Cartographer配置
16
Hector SLAM算法原理
扫描匹配 · 无需里程计 · 优缺点分析
Hector扫描匹配
17
在Gazebo中运行Hector SLAM
安装hector_slam · 参数配置 · 复杂环境测试
Hector实战
18
SLAM性能对比与调优
三种算法建图对比 · 关键参数调优 · 选型建议
对比调优
19
地图保存与格式转换
map_server保存 · pgm/yaml格式 · 分辨率与原点设置
地图格式
20
导航框架入门
Navigation2框架 · 全局/局部规划器 · 恢复行为
Nav2导航
21
代价地图(Costmap)配置
全局/局部代价地图 · 膨胀层与障碍物层 · 参数实战
Costmap配置
22
AMCL定位原理
自适应蒙特卡洛定位 · 粒子滤波 · 重定位
AMCL定位
23
在Gazebo中运行Navigation2
导航启动文件 · 初始位姿设置 · 发送导航目标点
Nav2Gazebo
24
路径规划算法
A* / Dijkstra · DWA / TEB · 参数调整与效果
规划算法
25
多传感器融合建图
LiDAR+IMU融合 · robot_localization · 提高建图精度
融合IMU
26
动态障碍物处理
Gazebo动态障碍物 · 避障行为 · 恢复行为配置
动态避障
27
多机器人协同建图
多机器人系统 · 分布式SLAM · Gazebo协同探索
多机器人协同
28
真实环境与仿真环境迁移
仿真到实车挑战 · 传感器噪声建模 · 参数对齐
迁移实车
29
项目实战:室内自主探索与建图
复杂室内环境 · 全自主探索建图 · 生成完整地图
项目实战
30
课程总结与进阶方向
全流程回顾 · FAQ · 学习资源与开源项目推荐
总结进阶