使用MEMS传感器进行航位推算的极限


13

我正在尝试追踪相对于一个人躯干的身体部位。我看到了很多有关使用MEMS加速度计和陀螺仪进行航位推算的问题,它们证实了我的怀疑,即各种因素极大地限制了它们在这类应用中的用途,但我正在寻求这些限制的说明:

  • 这些限制到底是什么?

    其他答案已经解决了为什么存在这些限制的问题。自然地,所讨论系统中的零件的规格以及什么被视为系统的“可接受的误差”都将改变确切的限制,但是在时间或距离方面,我可以预期航位推算会起作用吗?我很清楚,长距离(几码左右)的误差对于大多数实际用途来说太大了,但是在几英尺之内呢?

  • 我该怎么做才能改善这些限制?

    我目前正在考虑使用加速度计和陀螺仪。我可以在系统中添加哪些其他传感器以提高错误率?我知道可以在更长的距离上使用GPS,但是我怀疑任何消费类电子产品的GPS是否具有足够的分辨率可以为我提供帮助。

    此外,在改进传感器的基础上,改善这些限制的唯一途径似乎是达成共识,即提供一个不受错误影响的参考。一些系统使用照相机和标记器解决此问题。便携式/可穿戴设备可以提供哪些参考点?

    我已经看到了使用无线电波来精确测量长距离的方法,但是我无法确定使用“现成的”组件在这么小的规模(就测得的距离而言)中该系统是否准确。


9
对于将其标记为要关闭的人员以及其他同类人员来说,这是一阶电子设计问题。它询问如何使用COTS部件以及其他可能的部件来构建更好的惯性导航装置,以及当前的限制是什么,以及从建议的改进中可以期望得到什么。对于那些无法处理问题范围的人来说,该问题不能合理地分解为较小的问题,因为综合所有因素以获得更好的结果是其核心思想。
罗素·麦克马洪

可以将磁力计添加到6自由度陀螺仪和加速度计芯片中。
罗素·麦克马洪

我实际上是在考虑该问题由两个较小的问题组成的事实,但是得出了@RussellMcMahon指出的确切结论。
Selali Adob​​or 2014年

1
我怀疑任何消费类电子产品的GPS是否具有足够的分辨率来解决我的问题。实际上,有一种消费者GPS可以提供​​厘米级的精度。+/- 1cm是否足够精确,尚未指定您的应用。当然,它的成本要比典型的+/- 3m精度的GPS模块高很多
krb686 2014年

1
我没有在搜索中看到任何零件,您有任何零件编号吗?
Selali Adob​​or 2014年

Answers:


6
  • 他们到底是什么?

误差源包括零偏移(偏置)和比例误差(趋于缓慢变化)和噪声。MEMS传感器的价格从不到10美元到超过1000美元不等,误差项的幅度范围很广,具体取决于传感器的质量。

最大的问题是,通常需要积分才能使传感器值(加速度,角速度)达到所需值(位置,角度)。集成时,所有错误源都会随着时间的推移而增加。航位推算的数据价值会随着时间而下降,廉价的传感器最多可以提供几分钟的有用数据,而高端传感器的使用寿命可能长达几个小时。

  • 我该怎么做才能改善这些限制?

正如您已经发现的那样,摆脱日益严重的集成错误的最佳方法是将传感器数据与其他没有相同错误类型的独立数据源结合起来。例如,GPS可以为您提供一个绝对位置值,该值不会长期漂移,但具有相对较大的“噪声”分量。您可以使用这些数据来估算加速度计的偏差和比例误差,从而可以实时对其进行校正。它还允许您消除由传感器噪声产生的“随机游动”。卡尔曼滤波器是用于对系统建模(包括传感器误差项)并将数据组合在一起以在任何时间点对系统状态进行最佳估计的一种常用方法。

另一个示例是使用加速度计测量的“重力矢量”来抵消陀螺仪的角度漂移。这里的诀窍是确切地知道何时具有有效的重力矢量。也就是说,系统没有在任何方向上加速。各种启发式方法(例如“零更新”)用于完成此任务。磁力计也可以用来测量陀螺仪误差,即使您不知道磁场的绝对方向,只要您可以假设它是恒定的即可。

光学感测是获得无漂移速度,角度或位置估计的另一种方法,但是所需的图像处理可能需要大量的CPU(或FPGA)周期,因此这种系统的开发非常复杂。


这是一个非常不错的答案,但我认为它错过了问题一部分的意图(也许我需要在上面进行澄清)。“它们是什么”指的是那些限制。我会详细说明这个问题的含义,因为我意识到这些值会根据许多因素而有所不同。
Selali Adob​​or

我无法确定您是在询问错误的性质还是错误的严重程度。我试图在回答的第一部分中解决这两个问题。
Dave Tweed 2014年

哦,我明白了,所以在这种情况下,时间可能比距离要重要得多(我意识到这并不总是会成为彼此的)
Selali Adob​​or 2014年

3

您问还可以添加什么。3轴磁力计应该会有所帮助。地球磁场的移动速度比普通用户的移动速度要慢得多(幸运的是)。
看看神话般的MPU6000 / 6050

一个版本提供SPI和IIC接口,仅另一个版本提供IIC。

它包含一个3轴陀螺仪+一个3轴加速度计以及输入,以使其能够集成来自外部3轴磁力计的信号。
该IC包含一个“数字运动处理器”,该处理器集成了来自3 x 3传感器阵列的信号。我还没有掌握提供的精确功能,但打算将3个独立的信号源处理成有用的运动分析系统

数据表在这里

Digikey的IC成本约为10/1美元,制造商的评估板约为50+美元。或者,您也可以从中国购买一块完整的电路板-它们在这里的零售价约为6美元,即1块-IC和PCB组装。
我仍然没有弄清楚这是怎么发生的,或者它们是真实的还是...。我昨天收到了一个,但是暂时不能使用它了。(“虽然”的幅度差异很大,从很小到有时甚至很大)。网上有许多文章将它们与Arduinos结合使用。

精度如何?:

网上可能对此有很多讨论。
如果我正确地阅读了数据手册(并且不是我不太熟悉的设备类型)
,第12页的表6.1建议陀螺仪在25°C下的最大漂移为+/- 20度/秒,并且在-温度范围为40至+ 85C。假设实际的20度/秒速率是18秒内的一整圈。但是,磁力计和加速度计都可以访问外部参考矢量(重力和地球磁场),并且来自这些参考信号的信号可用于得出短期和长期陀螺仪漂移率并进行补偿。这很可能是他们的“运动处理器”所做的一部分。

加速度计误差似乎通常在+/- 5%以下。
我希望(而且可能是非常错误的),使用加速度计和磁力计将陀螺仪漂移误差修整到更长的时间基本上为零,将使您能够将陀螺仪信号用于数秒至数分钟的导航。GPS还提供速度信号,GP位置+速度与9DOF单元的组合听起来非常有用。

Wooly:以上听起来比我想要的要毛。我希望在接下来的几周内能有更多回合。我很想听听您的发现,如果我了解到有用的东西,将会尝试并进行举报。


根据您的应用程序,您可以将参考GPS和接收器临时放置在方便的位置。这可能非常紧凑-GPS +电池+ TX。一旦存入,它就知道它在哪里,并且可以根据系统所说的在哪里传输校正。使用相同的卫星星座“可能是个好主意”。如果用户和参考GPS放置在同一点时效果会更好,但是即使它们始终在空间上分开,该系统也可能会正常工作。

...我怀疑任何消费类电子产品的GPS是否具有足够的分辨率以解决我的问题。

不知道您的情况是什么,很难说。但是,相对于样本的GPS分辨率相对样本通常要远远优于数分钟或数小时即可达到的分辨率。我进行了一些测试,我开车经过一条城市路线,绘制了GPS坐标,然后在数小时后重复了该练习。在某些情况下,两条路径相距几米,但是当说沿着一条城市街道以一条直线行驶时,该地块是一条直线,直线的两边可能都小于一米。(那是几年前的事-自己尝试很容易。我只是从GPS串行RS232输出(通常为4800波特)记录数据,在这种情况下,将其在Excel中绘制为XY图。

可以使用差分GPS,从而使固定位置的本地固定接收器根据其已知位置和系统现在所说的位置提供纠错功能。此类系统有很多提供商,但如果满足以下条件,则其概念非常简单容易实现预算紧张。


我想讨论一下这种漂移。我在数据表中提到的不是漂移,而是陀螺仪在0转速下输出的值。第二个数字将是该值在整个温度范围内的差异。您认为这有意义吗?
乔纳斯·谢弗(JonasSchäfer)2014年

我正在尝试跟踪相对于一个人躯干的身体部位(我在问题中提到了它,但是我可能应该将其移至简介中,我无意中掩埋了它)。我在E-bay上看到了很多关于它的突破板,我要订购一个。查看数据表,这是一个非常有前途的设备。关于GPS的注释是指距离有多短(<1米)。我在这种类型的测量中看到的设备使用了非常专业的硬件。我从未想过使用差分GPS系统。我听说过它们,但是对它们了解不多,所以我会继续阅读,谢谢!
Selali Adob​​or 2014年

“使用相同的卫星星座可能是一个好主意。” 那不是DGPS的工作原理。参考站在其视图中计算对各个卫星的伪距校正并发送这些伪距。另一个电台只对自己也认为自己的那些卫星使用校正。
Dave Tweed 2014年

Invensense现在拥有他们的MPU-9250,它将MPU-6000(陀螺仪/ Accel)与3轴磁力计(Asahi Kasei AK8963)结合在一起,可在一个芯片上提供9个轴。而且它比MPU-6000还小:)
bitsmack 2014年

它也有类似的电子海湾商品,所以我订购了一个,因为分线板上磁力计的平均价格大致相同(这些板肯定很便宜!)
Selali Adob​​or 2014年

3

这些答案还没有涵盖您的特定应用程序,实际上,非常聪明的人已经解决了至少十二次。这里的两个关键词是逆运动学和卡尔曼滤波器。

到现在为止,应该清楚应用程序的错误源是什么,以及如何解决它们。但是,当处理本质上固定于人类的传感器时,可以通过对方程应用逆运动学来减小传感​​器的空间和角度位置范围。这基本上意味着您要跟踪人体上尽可能多的关节的相对位置,并对其应用人体运动学模型。例如,人们的手臂长度不会随时间变化,其运动范围也不会发生明显变化。骨骼不弯曲(在正常情况下)。所有这些都可以用来约束您的传感器位置。

另一种解决方案是使用尽可能多的正交传感器。正交:使用根本不同的测量原理。使用尽可能多的传感器输入,您可以使用所谓的卡尔曼滤波器,在给定传感器所处数据的情况下尽可能精确地进行计算。不过,卡尔曼滤波器并不是提供最佳答案的不可思议的实体。它们是需要针对您的特定应用进行调整和修改的数学模型,要使其正常工作可能很麻烦。但这确实使您能够以一种回旋的方式来组合否则很难关联的传感器数据。这种过滤器的输入可以是任何东西:位置,加速度和速度传感器,还可以是例如光传感器,它们可以通过响应在某些角度可见的光源来添加信息。

公司和大学已经证明了一些具有这种工作原理的“动力手套”(运动学+卡尔曼滤波器)。我在埃因霍温大学(TU Eindhoven)上看到的最新一台,是将MPU6050用于编织成手套的柔性基板上,以及一些支持传感器(我认为现在只是网络摄像头),它们全部馈入了由Matlab驱动的大型卡尔曼滤波器。它的重复精度在1mm以内。


到目前为止,我已经针对我的具体情况检查了问题的这些方面,因此,我对我可以使用硬件进行的操作更感兴趣,但是这些都是很好的要点(尤其是将IK用于约束)。
Selali Adob​​or

0

基本问题

自然地,所讨论系统中的零件的规格以及什么被认为是系统的“可接受的误差”都将改变确切的限制,但是在时间或距离上是否存在可以预期的推算有效的单个数量级?我很清楚,长距离(几码左右)的误差对于大多数实际用途来说太大了,但是在几英尺之内呢?

这可以通过研究惯性导航系统的短期误差动态来解决。许多 文本中都对它进行了详细介绍,但这是简短的“无方程式”版本。

惯性导航的工作原理如下:

  1. 精确了解您的初始位置,速度和姿势(即俯仰和偏航)。

  2. ΔŤ

  3. 使用刚刚计算出的新姿态,以数学方式旋转加速度计读数,使其与地球保持水平。

  4. 从新近测得的加速度计读数中减去重力。

  5. ΔŤ

  6. ΔŤ

  7. 根据需要重复执行步骤2-6。

bGbG×ΔŤ×ΔŤ×ΔŤ=bGΔŤ3

此外,该偏差将累积到姿态中,这将导致加速度计被错误地调平,这将导致加速度在错误的方向上被调平,然后将其整合到错误的方向上-三层错误。

这意味着陀螺仪误差会导致位置误差随时间的立方增长

由于相同的逻辑,加速度计误差会导致位置误差随时间的平方增长

因此,手机级MEMS传感器仅需几秒钟的有用(纯)惯性导航

即使您拥有非常出色的惯性传感器(例如,飞机坡度),从根本上讲,您仍然仅限于(纯)惯性导航的十分钟以下。原因是步骤3-重力随高度变化。弄错你的身高,重力将是错误的,这将导致你的身高是错误的,这将导致你的重力更加不正确,依此类推-指数误差增长。因此,即使是“纯”惯性导航系统(例如在军用飞机中发现的惯性导航系统),通常也将具有气压高度计之类的东西。来源

解决方案

此外,在改进传感器的基础上,改善这些限制的唯一途径似乎是达成共识,即提供一个不受错误影响的参考。

Ť2

一些系统使用照相机和标记器解决此问题。便携式/可穿戴设备可以提供哪些参考点?

研究商业产品都可以做到这一点。

从概念上讲,它的工作方式类似于立体视觉-您在摄像机之间拥有一个已知的基线,并且从每个摄像机观察到的每个标记的角度都不同。据此,可以计算出每个标记的3D位置(相对于相机)。可以在更多相机上更好地工作。

我已经看到了使用无线电波来精确测量长距离的方法,但是我无法确定使用“现成的”组件在这么小的规模(就测得的距离而言)中该系统是否准确。

使用便宜的硬件,十波UWB可能会有用(大约10厘米范围)。您将需要提出自己的算法。

我知道可以在更长的距离上使用GPS,但是我怀疑任何消费类电子产品的GPS是否具有足够的分辨率可以为我提供帮助。

在身体旁边,一个GPS系统将陷入困境。获得厘米级GPS依赖于(非常弱的)GPS信号的连续相位跟踪,如果天线靠近身体并且身体在四处移动,这将非常困难!对于仅L1的系统-无论价格便宜还是昂贵-跟踪都必须持续很长时间(10分钟以上),因此对于此问题不切实际。双频接收机有时可能会工作,但这些价格确实不便宜(数千美元)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.