1. 课程导入
在仓储、制造、医院与商业服务场景中,越来越多的“小车”开始自己认路、避障并完成搬运任务。这类设备通常被称为 AMR(Autonomous Mobile Robot,自主移动机器人)。它与传统 AGV 最大的区别在于:AMR 不依赖地面磁条、二维码或固定轨道,而是通过传感器感知环境、构建地图、估计自身位姿,并实时规划路径。因此,地图构建与自主导航是 AMR 从“能移动”走向“能自主作业”的核心能力。
一、AMR 的定义与分类
AMR 是一类能够在未知或半未知环境中,通过车载传感器感知周围环境,自主完成定位、建图、路径规划与运动控制的移动机器人。它的“自主”体现在三个层面:感知自主(知道周围有什么)、定位自主(知道自己在哪里)、决策自主(知道下一步怎么走)。
按应用形态,AMR 可分为以下几类:
- 潜伏顶升式 AMR:钻入货架底部顶升搬运,常见于电商仓、3C 制造线边仓。
- 叉车式 AMR:具备托盘搬运能力,适合月台、原料库等重载场景。
- 料箱机器人:在货架间取放料箱,强调高密度存储与高速拣选。
- 复合机器人:AMR 底盘加机械臂,实现“移动+操作”一体化。
- 清洁/巡检/配送 AMR:面向商用服务与公共空间,强调安全与人机共融。
二、典型应用场景与系统地位
AMR 的典型场景包括:仓储物流中的货到人拣选、智能制造中的线边配送与工序衔接、医疗场景中的药品与标本运输、商业服务中的清洁与引导。这些场景的共同点是:环境动态变化、任务频繁调度、对安全与效率要求高。
在 AMR 整机系统中,地图构建与自主导航处于“承上启下”的位置:向上承接调度系统下发的任务,向下驱动底盘运动控制。没有可靠的地图与定位,任务调度再优也无法落地;没有稳定的路径规划与避障,机器人就无法在动态环境中安全运行。
核心关系:调度系统决定“去哪里”,导航系统决定“怎么去”,运动控制决定“走得稳不稳”。地图是三者共享的空间基准。
三、地图构建与自主导航的核心原理
AMR 的自主导航通常遵循“感知—建图—定位—规划—控制”的闭环。以激光 SLAM 为例,其基本流程如下:
- 传感器采集:激光雷达获取二维/三维点云,IMU 与轮式里程计提供运动估计。
- 前端配准:将当前帧点云与上一帧或局部地图匹配,估计相对运动。
- 后端优化:通过位姿图优化消除累积误差,必要时引入回环检测。
- 地图生成:输出栅格地图、特征地图或点云地图,供定位与规划使用。
- 定位与规划:在已知地图中定位,使用全局规划器生成路径,局部规划器避障。
- 运动控制:将速度指令下发给底盘,完成轨迹跟踪。
在实际部署中,常用 ROS 2 的 Nav2 导航栈。一个典型的启动命令如下:
ros2 launch nav2_bringup bringup_launch.py \
map:=/home/amr/maps/warehouse.yaml \
use_sim_time:=false \
params_file:=/home/amr/config/nav2_params.yaml
其中 map 指定地图文件,params_file 配置代价地图、规划器、控制器与恢复行为等参数。地图质量、参数匹配度与传感器标定精度,直接决定导航效果。
四、学习路线与关键模块
本课程将围绕“建图—定位—规划—控制—部署”展开,整体学习路线如下表所示:
| 阶段 | 核心内容 | 关键产出 |
|---|---|---|
| 基础认知 | AMR 定义、分类、场景、系统架构 | 建立整机与导航关系认知 |
| 地图构建 | SLAM 原理、传感器标定、地图编辑 | 可用栅格地图与语义标注 |
| 自主定位 | AMCL、NDT、重定位与多传感器融合 | 稳定位姿输出与初始定位 |
| 路径规划 | 全局规划、局部规划、代价地图、恢复行为 | 安全高效的行驶策略 |
| 部署调优 | 参数配置、性能评估、故障排查 | 可复现的部署方案 |
五、常见误区与复盘建议
误区一:认为“建好地图就万事大吉”。实际上,地图只是基准,定位漂移、动态障碍、代价地图膨胀参数都会影响导航。
误区二:忽视传感器标定与外参。激光雷达安装角偏差几度,就可能导致建图重影与定位跳变。
误区三:只调全局规划,不关注局部控制。窄通道、人流密集区的通过性,往往取决于局部规划与恢复行为。
建议在每完成一个模块后,回到真实场景做一次“小闭环”验证:建图后立即定位,定位后立即规划,规划后立即控制,记录失败点并复盘参数与硬件安装。只有把地图、定位、规划、控制串成闭环,AMR 才能真正自主跑起来。