- 工业科技与智能制造新闻站点

激光SLAM是什么?移动机器人建图与定位原理

机器人 18℃ 0

激光同步定位与地图构建(激光 SLAM),是利用激光雷达对周围环境的观测,一边估计机器人所在的位置和朝向,一边建立环境地图的技术。它解决的是“地图尚不完整时,如何同时知道自己在哪里、周围是什么样”的问题,通常还会融合轮式里程计、惯性测量等信息。

移动机器人用激光雷达扫描仓储通道,并形成地图与行驶轨迹的概念示意
激光扫描提供环境几何观测,SLAM 将多次观测组织到共同坐标系中。

在移动机器人类型中,自主移动平台常需要这样的环境感知能力。但能建图,不等于已经具备完整的路径规划、动态避障和安全控制;这些任务与 SLAM 使用的观测可能相关,承担的职责却不同。

雷达测到的是距离,为什么还需要 SLAM?

激光雷达在多个方向测量到周围物体的距离,一次扫描可以形成二维轮廓或三维点云。二维扫描常描述某个扫描平面上的墙体、柱子和货架腿;三维扫描则包含更多高度信息。它们首先位于传感器自己的坐标系里。

机器人向前移动后,同一根柱子在雷达坐标系中的位置会改变。若直接把各次扫描叠加,柱子可能变成多个重影。SLAM 要估计每次观测发生时的机器人位姿,再把观测变换到地图坐标系中,才能让同一对象尽量重合。

这里的“位姿”同时包含位置和姿态。平面移动通常关心平面上的两个位置坐标与朝向角;三维运动还需处理高度、俯仰和侧倾等。地图与位姿互相依赖:估计位姿需要已有环境结构,更新环境结构又需要知道观测从哪里发生。

从一次扫描到地图,主要经过哪些环节?

不同算法的实现并不相同。以具有局部建图和全局优化的系统为例,可以沿下列过程理解。Cartographer 的算法说明将局部 SLAM 和全局 SLAM 区分开来,这是一种具体架构,不是所有系统必须采用的固定模块划分。

  1. 整理观测。读取激光距离与时间信息,去除不适用的回波;运动过程中还可能需要补偿同一帧内各点的采集时间差。
  2. 预测运动。结合上一时刻位姿、轮式里程计或惯性测量,得到本次位姿的大致初值。具体需要哪些辅助传感器,由算法及运动条件决定。
  3. 进行扫描匹配。调整当前扫描的相对位置与方向,使其与已有扫描、特征或局部地图的几何结构一致,形成更准确的相对运动估计。
  4. 更新局部地图。将新观测放入地图,保存局部结构;系统可以采用占据栅格、点云或其他地图表示。
  5. 建立全局约束。识别重访区域或引入其他位置约束,再联合调整历史位姿与地图,减小长距离运动后的不一致。

扫描匹配不是让每个点都找到完全相同的旧点。视角变化、遮挡、测量噪声和人员移动,都会让两次扫描不同。算法需要在可用观测中估计最合理的对应关系,重复货架或特征稀少的通道则可能让多个位置看起来相似。

回环检测为什么能减小累计误差?

每次相对运动估计都可能带有小偏差。机器人沿长通道运动时,这些偏差会逐渐积累;即使回到起点附近,地图中的轨迹也可能无法闭合,墙体出现重影或错位。这种随运动积累的不一致常被称为漂移。

回环检测尝试判断“现在是否看到了以前到过的区域”。一旦形成可信的重访约束,后端优化便可以联合调整多段轨迹,让局部观测之间的关系更加一致。它不是把当前位置生硬地移回起点,而是根据约束与误差模型,重新分配历史位姿中的偏差。

Google Research 公布的2016 年二维激光 SLAM 研究展示了扫描到子地图匹配与实时回环约束的做法。回环能否可靠建立,取决于重访区域的辨识性和匹配结果;将两个相似但不同的通道误认成同一位置,反而可能破坏地图。

局部匹配产生累计漂移,与识别回环后联合调整地图轨迹的对照
回环约束帮助全局优化协调历史位姿。图中偏差仅作原理说明。

建图、已有地图定位和导航分别做什么?

任务主要问题典型输出
SLAM 建图环境地图尚未完整建立时,机器人在哪里,周围结构怎样连接?地图与机器人轨迹或位姿估计
已有地图定位面对已保存的地图,当前观测对应地图里的哪个位置?相对于已有地图的当前位姿及相应状态信息
路径规划与运动执行怎样从当前位置到达目标,并把路径转成运动?全局或局部路径、速度指令与执行状态
障碍处理与安全控制当前哪些区域不能通过,遇到人员或障碍时如何响应?障碍表示、避让或停车等控制动作

实际运行中,机器人可以先完成建图,再主要在已有地图上定位;也有系统允许在线更新地图。SLAM 使用激光雷达,并不自动证明整机具备某一种安全等级。用于建图的感知功能、用于避障的处理与安全保护,应按整机设计分别理解。

哪些环境会让定位和地图变得不稳定?

几何特征太少或高度重复。长直走廊里,相邻位置的扫描可能非常相似,沿通道方向的位移就较难约束;成排相同货架也可能增加错误对应的机会。地图“有线条”,并不意味着所有方向的位置都同样容易确定。

观测与预期不符。玻璃、反光表面、低反射物体或灰尘可能改变有效回波;人员和叉车不断移动,也会使当前扫描偏离静态地图。具体表现取决于雷达原理、材质、观察角度与算法的异常观测处理,不能仅用“有激光就能看见所有障碍”概括。

传感器关系不准确。雷达与机器人之间的安装关系、时间同步或运动补偿出现问题,可能让墙体变弯、转弯处错位。轮子打滑会使轮式里程计偏离真实运动,惯性测量也有噪声和偏置;融合更多传感器仍需要正确处理各自的不确定性。

Cartographer 的输入接口说明列出了激光扫描、点云、惯性和里程计等观测来源。理解输入条件,比把某一算法名称等同于固定精度更有意义。

怎样读懂一张 SLAM 地图?

占据栅格图中的格子表达空间被占用、空闲或尚未充分观测的状态;未知区域不应被直接理解成可通行。地图分辨率是表示空间的粒度,也不等于机器人绝对定位误差。雷达测距表现、观测几何、运动速度和算法误差都会影响最终结果。

观察一次建图结果,可以先看墙体是否连续、回到同一区域时是否出现重影、转弯处是否错位,再结合原始扫描与运动记录判断原因。这些是理解系统行为的线索;若要评价定位精度,仍需要独立参考测量、明确的测试路径与工况,不能只凭地图看起来整齐就得出数值结论。

参考资料

评论留言

暂时没有留言!

我要留言

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。