c

coa09zl

V1

2022/05/19阅读:21主题:奇点

GPS测量故障检测

文章:GPS测量故障检测

这是“视觉增强的移动机器人工具箱”系列的第一篇文章。

帧仓首创的NEST(取自Navigation、Estimation、Sensing和Tracking首字母)移动机器人工具箱旨在从移动导航、位姿预估、传感器感知和路径跟踪四个层面帮助机器人制造商0代码开发机器人。

问题

我们在这篇文章展示如何用NEST的测量故障检测功能识别GPS信号飘移或丢失。

GPS测量通过RTK(实时差分定位)技术解算后能为无人驾驶车提供厘米级精度的定位信息。然而,在城市中,由于信号被楼房和树木反射或是遮挡,GPS测量的精度会降级到米级或是丢失。如果无人车使用了这些错误数据,那后果是致命的(想象无人车以为自己在斑马线外等红灯而实际上已经冲到马路中央),所以在把GPS信号融入到定位算法(如卡尔曼滤波器)之前,系统需要判断这个数据是否可靠。如果数据被判定为不可靠,卡尔曼滤波器将不会执行测量更新步骤,或是考虑其它可用的测量。

NEST测量故障检测

NEST通过预先训练好的机器学习算法识别测量故障。当GPS信号被融入到定位算法时,NEST会先计算信号的可信度,再根据开发者设置的阈值决定是否使用该数据。我们用NEST提供的仿真工具演示该功能。

首先,初始化仿真环境。我们在设置栏中输入经纬度和地磁偏角。

假设无人车的起始点在上海闵行区。该地的经度为东经121.38,纬度北纬31.12,海拔4.5米。为简单起见,这里暂不考虑地磁偏角的影响。

然后我们给GPS信号增加标准差为0.01均值为0的高斯噪声。并设置检测阈值为0.2(阈值涉及false positive 和false negative的权衡)。

现在我们可以观察到GPS接收器的输出信号在我们设置的数值下小幅度波动,并且系统判定数据正常(O)。Robot State是定位算法输出的机器人2D位姿数据(x,y,w)

现在我们发高斯噪声的标准差提高到10,来观察一下数据的变化 GPS接收器输出更大波动的信号,并且多数情况下数据被判定为无效(X)。

What’s Next

由于数据的波动,高方差的测量偶尔也会通过NEST的检测。我们可以通过拉长检测时间窗口的方法解决这个问题,即取一段时间的测量数据的平均值。当然,过长的时间窗口会导致检测延迟,我们要结合应用场景设置这个参数。

另外,无人车检测到GPS测量故障后,我们需要其它定位源让无人车可以继续工作。下一篇,我们将介绍NEST的视觉定位功能如何在GPS不可用的场景为机器人/无人车提供稳定的位姿数据。

NEST工具箱尚未正式发布,对此感兴趣的机器人开发者可以发送邮件到linzheng@zc-it.cn参与我们的测试。

分类:

人工智能

标签:

人工智能

作者介绍

c
coa09zl
V1