传感器融合是结合多个物理传感器以产生准确的“地面事实”的艺术,即使每个传感器本身可能不可靠。了解传感器融合背后的方式和原因。
你怎么知道你在哪里?什么是真实的?这是传感器融合应该回答的问题。不是以哲学的方式,而是字面上的“我会自动撞入白宫吗?因为我被告知不要这样做”,这种方式内置于商业四轴飞行器的固件中。
传感器远非完美的设备。每个人都有让他们发疯的条件。
惯性测量单元是一个经典,有些 IMU 芯片在纸面上看起来很优越,但在某些条件下(例如在没有橡胶垫的四轴飞行器上以 60 公里/小时的速度在空中飞行),在现场却因“锁定”而赢得了声誉。
在这些情况下,IMU 可能会受到振动(在符合规格范围内)的影响,从而使谐波与微机械部件相匹配。IMU 可能设计用于带有摆动器的手机,而不是用于以 20,000 RPM 嗡嗡作响的多个电机旁边。突然,机器人认为它正在翻转(实际上并非如此)并旋转以进行补偿。一些飞行员带着数据记录器飞行,并捕捉到了壮观坠机前 IMU 突然发出噪音的瞬间。
那么,我们如何应对不完善的传感器呢?我们可以添加更多,但这不是让问题变得更加复杂吗?
拥有的传感器越多,您的盲点就会越小。但为了处理由此产生的模糊性,数学变得更加困难。用于进行传感器融合的现代算法是“置信传播”系统——卡尔曼滤波器就是典型的例子。
Naze32 飞行控制器带有机载“传感器融合”惯性测量单元。这架飞机已经飞过很多次了。
卡尔曼滤波器
从本质上讲,该算法对每个传感器都有一组“置信”因素。每个循环中,来自传感器的数据都用于统计改进位置猜测,但也会对传感器的质量进行判断。
机器人系统还包括对现实世界知识进行编码的约束,即物理对象在空间中平稳且连续地移动(通常在轮子上),而不是像 GPS 坐标样本可能暗示的那样进行传送。
这意味着,如果一个始终提供出色、一致值的传感器开始告诉您不太可能且坦率地说不可能的事情(例如当您进入隧道时的 GPS/无线电系统),则该传感器的可信度评级会在几毫秒的迭代内降级,直到它出现为止。又开始讲道理了。
这比仅仅求平均或投票要好,因为卡尔曼滤波器可以应对大多数传感器暂时疯狂的情况,只要其中一个传感器保持良好的意义。它成为机器人度过黑暗时期的生命线。
卡尔曼滤波器是马尔可夫链和贝叶斯推理等更一般概念的应用,这些概念是使用证据迭代完善猜测的数学系统。这些工具旨在帮助科学本身检验想法(也是我们所谓的“统计显着性”的基础)。
卡尔曼滤波器的表示。图片由 Petteri Aimonen 通过Wikimedia Commons创建。
因此,可以诗意地说,一些传感器融合系统正在表达科学的本质,每秒一千次。
卡尔曼滤波器几十年来一直用于空间卫星的轨道站保持,并且它们在机器人技术中变得越来越流行,因为现代微控制器足以实时运行算法。
PID过滤器
更简单的机器人系统具有 PID 过滤器。这些可以被认为是由一个传感器馈送的原始卡尔曼滤波器,所有迭代调整都被砍掉并替换为三个固定值。
即使自动调整或手动设置 PID 值,整个“调整”过程(调整、飞行、判断、重复)也是卡尔曼的外化版本,由人类执行置信传播步骤。基本原则还是有的。
自定义过滤器
真实的系统通常是混合体,介于两者之间。
完整的卡尔曼包含对机器人有意义的“控制命令”术语,例如:“我知道我向左转动了方向盘。指南针显示我要向左行驶,GPS 认为我仍在直行。我该相信谁?”
即使对于恒温器(经典的简单的控制回路),卡尔曼滤波器也知道它可以通过摆弄旋钮并等待观察发生的情况来判断温度计和加热器的质量。
单个传感器通常无法影响现实世界,因此这些术语会从数学中消失,而大量的能量也会随之而来。但是你仍然可以应用交叉检查信念传播思想和“无瞬移”约束,即使我们不能完全关闭控制循环,
权衡传感器
在本文的其余部分中,我们将关注物理位置,但相同的想法适用于您想要测量的任何数量。您可能认为使用多个相同类型的备用传感器是可行的方法,但这通常会以不幸的方式结合它们相同的弱点。混合系统更强。
让我们将一般问题表述为“我不想让我的四轴飞行器坠毁”,将故障条件定义为快速飞行的机器人与被称为“无情地面”的分形表面的任何交集。
我们很快就会发现,没有任何一种商品传感器可以让我们 100% 信任。那么为什么机器人不会从天而降呢?因为每个人都解决了更大的数独谜题的不同片段,直到只剩下真相。
让我们回顾一下四轴飞行器上可能会发现的一些典型传感器,并讨论它们的优点、缺点以及在传感器融合的“数独难题”中的总体地位。
定位系统
这是显而易见的选择,但是哦,局限性!样本误差可能有两米,而且偏差会随着卫星的变化而漂移。
如果您想使用 GPS 获得到厘米的位置,则需要将其固定到位并在几天内进行测量。那不是我们想要的。在空中高速移动时,即使是 100Hz GPS 装置也无法进行时间平滑。这比飞行控制器的主事件循环慢 20 倍。
GPS 也无法告诉您您面朝哪个方向。仅取决于您移动的方向。
此外,Z 分辨率(高度)的可靠性可达到纬度和经度的 1/10。我们必须给地面大概20米的余地。
哦,GPS 本身并不能告诉你距地面有多远,只能告诉你距海平面有多远。合乎逻辑的解决办法是在起飞前读取读数,但这样一来我们就会出现另一个 20 米的误差条。而且,地平面对 GPS 信号的影响在飞行中是不同的,因此我们不能假设这些误差会在长期内消失 - 尽管它们一开始会消失!
但这仍然无法阻止我们飞入山中。
一款商品 GPS 接收器,可通过 I 2 C轻松与微控制器连接。
一个 GPS 是不够的。我们无法在 20-40 米的平坦地面上可靠地飞行,这距离空中至少有五层楼高,这对于安全裕度来说还有很长的路要走。不要误会我的意思,能够以 20 米的垂直误差范围定位自己在世界上的任何地方,这真是太神奇了……但这并不能阻止我们崩溃。这需要环路中的差分 GPS 地面站、昂贵的高速接收器和一些非常好的拓扑图。
声纳、激光雷达、雷达/光流
因此,如果使用卫星对自己进行三角测量并不是避开地面的方法,那么我们就尝试直接“看到”它!
至少有三种现成的测距技术可以发出 ping 信号并查看反弹需要多长时间:声纳、激光雷达,显然还有雷达模块。
然而,这些传感器也有弱点:
有些表面根本不反射信号。窗帘和地毯吸收超声波,深色油漆吸收激光雷达,水吸收微波。你无法避免你看不到的东西。
当您将多个相同的传感器彼此靠近时会发生什么,这一点不太明显。您如何知道检测到的“ping”是您的?即使是单个传感器也必须应对自身的串扰,等待足够长的时间让回声消失。
可以对信号进行“编码”(基本上是对它们进行加密),以便每个 ping 都是的,但这会增加设备的复杂性。第二个解决方案是半随机化您的 ping 计划,这样您就不会锁定时间并始终被同步 ping 欺骗。
光流传感器是一种不同的方法,使用相机来查看镜头中的所有物体是否变大(表明地面/墙壁正在快速上升)或变小(当障碍物消失时)或向侧面滑动。相机不会像声纳那样互相干扰,如果您真的很聪明,您可以估计倾斜和其他 3D 属性。
光流传感器仍然存在“吸收”弱点。你需要一个漂亮的纹理表面让它们看到流动,就像它们所基于的光学鼠标不能在玻璃上工作一样。它们变得越来越流行,因为流计算现在可以安装到 FPGA 或快速嵌入式计算机中。
图像传感器(例如这款 2K 分辨率的 Raspberry Pi 相机)可用于“光流”避障。
几何学
一个问题是几何问题。考虑在四轴飞行器上飞行的物理传感器。毕达哥拉斯说,如果你处于一个角度,那么地面看起来会比实际距离更远。倾斜得足够大,我们根本看不到它,尽管我们距离坠毁只有几厘米。
为了纠正这个问题,我们需要了解自己的倾向。这意味着。..
陀螺仪与加速度计合并在一起并被称为“IMU”,但它们经常一起出现的原因是它们自然地掩盖了彼此的主要弱点。他们是经典的融合组合。
但是,单独而言,陀螺仪是连续位置测量所需的、干净的传感器数据单一来源。
无需赘述,陀螺仪是由蚀刻到芯片表面的微机械音叉构建的。当芯片旋转时,一些音叉上会受到力,并且它们会相互改变音高。(唉,没有微型陀螺——那太简单了。)
MEMS 陀螺仪几乎不受除旋转之外的所有运动的影响。即使严重的振动也不会影响它们(在规格范围内),因为那是横向加速度。
如果您查看多旋翼飞行器的内部控制回路,就会发现飞行控制器使用陀螺仪来保持空中水平。一些速率模式飞行员完全关闭加速度计,为陀螺仪提供更多带宽。这足以说明陀螺仪的重要性。
MEMS 陀螺仪传感器的内部。图片由极客妈妈项目提供。
如果您知道半毫秒前您所在的位置,并且想知道此后发生了什么变化,那么陀螺仪快速、准确且可靠。他们不需要弹性表面或卫星。没有它们,四轴飞行器实际上无法直立飞行。
陀螺仪的弱点是漂移。无论你多么努力,它们似乎都围绕着一个随机轴慢慢旋转。每次旋转需要几分钟,但即使是一块不动的砖块也会显得轻轻旋转。累积相对样本以获得“”估计也会将误差条加在一起。上升的陀螺仪误差需要通过外部参考标记定期“归零”。
加速度计
这就是为什么加速度计是陀螺仪的朋友:因为它检测到的“向下”参考(至少,当它们处于地球引力中时)。
好吧,无论如何,平均而言。它每时每刻都在承受重力、线性加速度、旋转产生的离心力、振动、巨大的噪音,当然还有传感器缺陷。
因此,尽管加速度计数据具有高采样率和良好的 MEMS 传感器精度(通常与陀螺仪一样好),但它是嘈杂且不可信的数据之一。它正在接收多个必须消除歧义的“信号”。但正是对所有这些不同信号的敏感性使其具有如此多的用途。它听到 一切。
加速度距离我们真正想知道的东西(位置)也有两个积分步骤,所以我们必须总结大量的增量和误差条,从测量的加速度到估计的速度,然后我们必须再次这样做才能得到估计位置。错误堆积起来。
这就是为什么 GPS 是加速度计的朋友:因为它定期将不断增长的位置误差“归零”,就像加速度计轻轻地将陀螺仪的方向误差归零一样。
加速度计传感器芯片示例。图片由视差提供。
磁力计
好的指南针不应被忽视。然而,与加速度计一样,它通常用作控制长期陀螺仪漂移的方法。知道哪条方向是向上比知道哪条方向是磁北更有用——但是,有了这两者,我们就可以知道我们在地球上真正的方向。
磁力计样本也非常嘈杂,特别是如果附近有电机的话。它们会受到各种环境影响,无论是钢制建筑框架还是有趣的岩石。
它们经常与 GPS 接收器配对,因为它们可以克服彼此的弱点,同时在其他方面非常匹配。一种给出粗略的位置,另一种给出粗略的方向。如果您的机器人被限制在轮子上(而不是像傻瓜一样飞来飞去),那么这确实是您所需要的。
评论
查看更多