第1章 · 课程导学与系统概览

大家好,我是这门课的主讲。做了快十年SLAM和机器人导航,踩过不少坑,也攒了一些实战心得。这一章咱们先不急着写代码,把整个课程的地图摊开,聊聊SLAM的前世今生、导航系统的骨架,以及你学完这门课能做出什么东西。

1.1 SLAM技术发展史 —— 从“盲人摸象”到“实时建图”

SLAM,说白了就是让机器人在未知环境里一边走路一边画地图,还得知道自己站在地图的哪个位置。听起来像科幻?其实上世纪80年代就开始研究了。

  • 古典时代 (1986-2000):基于卡尔曼滤波,只能处理小场景。我记得当时用激光雷达做EKF-SLAM,一个走廊跑完,地图就飘了。
  • 图优化时代 (2000-2010):引入图论,把位姿和路标当成节点,误差当成边。我2015年第一次用g2o做后端,才明白什么叫“全局一致性”。
  • 视觉SLAM爆发 (2010-至今):ORB-SLAM、DSO、VINS-Mono……相机便宜,特征点丰富。但说实话,纯视觉在弱纹理或快速运动时容易崩,我吃过不少亏。
  • 多传感器融合 (现在):激光+视觉+IMU+轮速计,互相补短板。你想想看,一个机器人如果只有激光,玻璃墙就完蛋;只有视觉,暗光就瞎。融合才是王道。
💡 我的观点: SLAM技术已经比较成熟,但离“稳定商用”还有距离。这门课的目标就是帮你填平理论和工程之间的沟。

1.2 导航系统核心架构 —— 拆解一台能跑的机器人

一个完整的自主导航系统,不是只有SLAM。我习惯把它分成四个模块,像搭积木一样:

  1. 感知层:激光雷达、相机、IMU……原始数据进来,做预处理、特征提取。
  2. 状态估计层 (SLAM):前端匹配 + 后端优化 + 回环检测,输出位姿和地图。
  3. 规划层:全局路径(A*、Dijkstra) + 局部路径(DWA、TEB),避开动态障碍。
  4. 控制层:把路径转成速度指令,PID或MPC,让电机转起来。

嗯,这里要注意:很多人只盯着SLAM,忽略了规划和控制,结果建图很漂亮,机器人却撞墙。我早期一个项目就是这样,地图精度毫米级,但路径规划没调好,机器人原地转圈……

感知层 激光/相机/IMU 状态估计 SLAM前端+后端 规划层 全局/局部路径 控制层 PID/MPC 原始数据 位姿+地图 轨迹 速度指令 回环检测 消除累积误差 自主导航系统核心架构

1.3 课程项目实战目标与评估标准

这门课不是纸上谈兵。我们会从零搭建一台差速轮式机器人,搭载激光雷达和IMU,在仿真和真实环境中跑通SLAM+导航。具体目标:

  • 建图:用2D/3D激光SLAM构建一致性地图,面积不小于500㎡。
  • 定位:在已知地图中重定位,误差<10cm(我习惯用ATE评估)。
  • 导航:给定目标点,机器人自主避障并到达,成功率>95%。
  • 部署:在Jetson Nano或树莓派上实时运行,帧率不低于10Hz。
⚙️ 评估标准小贴士: 我一般用evo工具对比轨迹,位姿误差(APE)和相对位姿误差(RPE)是硬指标。课程里会教你怎么用这些工具,不只看效果,还要量化。

1.4 课程结构 & 你能带走什么

30章内容,从ROS2环境搭建到工业级项目实战。我个人建议按顺序学,但如果你对某个模块特别熟,可以跳着看。不过,第6-12章(激光SLAM)和第16-21章(导航)是核心,建议啃透。

阶段章节产出
基础1-5章ROS2环境、传感器驱动、TF树、仿真机器人
SLAM核心6-15章激光/视觉SLAM算法、多传感器融合
导航核心16-24章全局/局部规划、代价地图、Nav2、避障
实战部署25-30章嵌入式部署、多机器人、工业项目
⚠️ 避坑: 我曾经在部署阶段才发现IMU坐标系和机器人基座没对齐,导致定位发散。所以第4章坐标变换一定要亲手做一遍,别偷懒。

好了,第一章就这些。记住:SLAM导航不是玄学,是工程。后面每一章我都会带着你写代码、调参数、看波形。