
如果机器人要实现自主移动和导航,则必须知道它在哪里以及周围正在发生什么. SLAM是一种方案或技术,可以帮助机器人实现定位和地图构建功能. SLAM的全名是“同时定位和地图”,或“同时定位和地图构建”. 它首先用于军事核潜艇的潜艇定位.
如果机器人要自主移动并在未知环境中避开障碍物,则它必须知道其“定位”在哪里,环境中有哪些障碍物,周围的情况等等. SLAM是一种方案或技术,可以帮助机器人实现定位和地图构建功能. SLAM表示同步本地化和映射. 它首先用于军事核潜艇的潜艇定位. 近年来,由于机器人,无人机,自动驾驶,人工智能以及虚拟现实和虚拟现实技术的发展,SLAM技术逐渐成为众所周知的技术,因为SLAM技术是这些领域的核心和难点.
有许多方法可以实现SLAM,也有很多硬件平台可供选择,例如SILAN Technology的SLAMWARE. 整个硬件平台都嵌入了SLAM技术. 它可以在室内使用自己的激光雷达和ROS中的导航功能包,以在室内实现机器人的自主定位和导航. SLAM是一个概念,而不是单个算法. SLAM过程包括许多步骤,包括地标提取,数据关联,状态估计,状态更新和地标更新. 而且每个部分都可以通过不同的算法来实现. 其中,EKF(扩展卡尔曼滤波器)是一种实现SLAM过程的方法.
SLAM既可以用于二维空间运动,也可以用于三维空间运动,例如目前流行的AR场,UAV自主避障场等,都是SLAM三维空间使用的例子.
要完成SLAM,首先需要一个移动机器人平台,该平台可以由无人机或移动机器人来实现. 移动机器人平台通常选择车轮类型,并且具有全向运动模式或两轮运动模式. 机器人的移动距离可以根据车轮的旋转数粗略估计,但是这种方法通常是不准确的,因此需要其他测距设备来帮助完成机器人的位置估计. 例如IMU惯性导航模块和激光雷达测距设备,当然还有其他单眼,双目和其他视觉传感器设备.

Lidar可以扫描环境中的障碍物,通过SLAM流程生成包含地标信息的环境图,并将其提供给机器人. 由于激光雷达具有高精度,高输出效率并且不需要太多的计算过程,因此被广泛使用. 但是,激光雷达并不便宜,并且激光雷达无法检测到玻璃等透明障碍物,并且不能在水下使用,因为水会阻碍光的透射,因此激光雷达也有一定的应用限制.
Visual SLAM的计算量很大,很容易受到光照水平的影响. 但是近年来,随着硬件性能的提高,visual SLAM也得到了迅速的发展和应用. 在户配备多个相同类型的传感器. 实现对周围环境的自动感知.
SLAM过程由几个步骤完成,其主要目的是使用环境更新机器人的位置信息. 一般过程包括地标提取,数据关联,状态估计,状态更新和地标更新.
仅依靠机器人的运动来估计其位置的方法是不准确的,因为机器人的里程表通常具有某些误差. 通常,使用激光雷达等测距设备获取环境信息,然后将其与里程表信息融合在一起,以更准确地获取机器人的位置. 通常有很多方法可以实现这一点,而EKF是一种常见的SLAM实现. EKF是SLAM的核心. 它不断估计机器人的位置和周围环境信息,并迭代地更准确地计算机器人的位置.
下图是SLAM的简单过程描述:
机器人移动时,其位置发生变化. 机器人将里程表观测到的信息与激光雷达获取的地标信息关联起来. 位置信息.
让我们通过几张图片来详细了解位置估计的过程:

我们用三角形代表机器人,用五角星代表地标. 在图1中,机器人首先通过激光雷达测量地标相对于自身的距离和角度信息;在图2中,机器人开始向前移动以到达新位置. 机器人首先根据里程表或运动方程式预测当前位置;到达图3中的位置后,机器人将通过激光雷达重新测量每个界标相对于机器人的位置和角度信息. 通过该测量获得的距离和角度显然不一定与机器人根据运动方程估算的位置一致移动机器人技术基础与制作,并且机器人更倾向于信任通过激光雷达测量获得的位置和角度信息. 在图4中,我们使用实心三角形Position,虚线三角形代表机器人通过运动方程估算的位置. 显然,这两个位置不重叠. 此时,机器人通过EKF综合预测和测量来估计机器人的实际位置. 出局;
机器人通常依靠里程表来获得自己的运动状态估计,这通常是通过车轮的旋转次数来实现的. 与激光雷达数据融合时,必须保证两个数据信息的时间同步,否则会导致状态计算错误;地标必须高度可区分且易于观察. 地标太少不容易观察,并且不能随意更改地标. 通常,将静止物体选作观察界标.
下面是使用制图师技术的SLAM示例. 有关详细信息,请参阅:

github.com/googlecartographer/cartographer
以下是基于香港科技大学的单眼视觉和惯性导航的SLAM技术的开源示例. 有ROS版本和IOS版本. -单声道
SLAM技术随着AI技术的发展逐渐为人们所熟知. 2D激光雷达SLAM技术目前相对成熟,具有许多实际应用. 视觉SLAM领域仍然存在许多问题,并且仍有很多研究和改进的空间. 例如移动机器人技术基础与制作,无人驾驶中的多传感器数据融合,数据关联的优化,环路检测机制和重定位精度是问题. Visual SLAM可能是未来的关键研究领域和发展方向.
限量,请纠正我.
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-159282-1.html
比如反潜
我舰奉命撞沉你舰