07
2020-05

Allan方差是什么?

Author:admin

1. 引言

在研究晶体振荡器和原子钟的稳定性时,人们发现这些系统的相位噪声中不仅有白噪声,而且有闪烁噪声。使用传统的统计工具(例如标准差)分析这类噪声时统计结果是无法收敛的。为了解决这个问题,David Allan于1966年提出了Allan方差分析,该方法不仅可以准确识别噪声类型,还能精确确定噪声的特性参数,其最大优点在于对各类噪声的幂律谱项都是收敛的。该方法最初被用于分析晶振或原子钟的相位和频率不稳定性,比如,晶振的中心频率均采用Allan方差来表征时域内的稳定度。由于高端陀螺,气体传感等各类物理量测仪器本身也具有晶振的特征,因此该方法随后被广泛应用于各种物理传感器的随机误差辨识中。

Allan方差允许你查看一段时间内信号中的噪声。通常,Allan方差的值显示在对数——对数图上。你之前可能已经看过这些图,并且可能有以下问题: 

 Allan方差图是如何制作的? 

 这些图如何帮助我在产品之间进行选择? 

 这些图在我使用产品时有什么作用? 

这些是本文即将涵盖的主题。

Allan方差是量化噪声的一种常用方法,尤其适合于鉴别测量数据中不同类型的噪声。分析实际测量获取的“信号”,并将数据中的噪声和系统漂移分开,这是一个复杂且通常由开发者自定义的过程。Allan方差图给出了在给定理想条件下,经过噪声校正的系统可以达到什么样的表现,是衡量系统稳定性的指标。

下文中,我们首先将从整体上介绍传感器噪声的基础知识。有了噪声知识,我们将讨论Allan方差图的含义,帮助你在购买产品中使用这些数据进行决策以及在使用产品时校正传感器的噪声。


2.信号,噪声和数据

让我们以一个例子开始:有一个传感器——可以是加速度计,温度传感器或光传感器等——每秒可以进行多次测量,测量频率即为采样率。测量获取的数据流是我们的“信号”。信号中的每个数据点都是在实际环境中的测量值,噪声,干扰,漂移,偏置等的组合。如果我们仅通过观察信号中的一个数据点,而不知道其他点或者对传感器其他信息有任何了解,我们绝对无法知道这个信号的哪一部分是噪声,哪一部分是实际信号。

2.1.噪声

噪声具有一个普遍的特征:在足够长的时间内,噪声的平均趋近于零。

这只是一个纯粹的定义,但将对我们的分析很有帮助。如果这个定义不正确,则信号中不趋近于零的部分就不是“噪声”,而是其他的东西。可能是某种干扰,可能是传感器的偏移量,甚至,可能就是你要测量的数据!信号中不是噪声又不是实际数据的部分通常称为“错误”。在现实世界中的数据流(即信号)中,所有这些因素和其他因素共同构成了传感器输出的值。以加速度计为示例:

如果一个加速度计的噪声水平为10mg(注意这里g是重力加速度)。假设我们从加速度计上读取了“ 1.052g”,得到了一个数据点。让我们进一步假设(并且非常不正确),数据组成部分是: 

 真实数据 

 噪声 

即使这样,我们也无法使用单个数据点来很好地校正噪声。首先,噪声水平通常是“最大”噪声。这意味着噪声将偏离实际数据值约0.01g,但其幅度也可能更小。即使我们假设噪声始终为0.01g,该特定数据点上的噪声是叠加还是降低?换句话说,我们的测量值实际上是1.062还是1.042?没有办法知道。

为此我们需要更多的数据。让我们继续看下一个数据点,假设是1.059,下下一个是1.061,然后是1.057。我们似乎正在接近答案,这也印证了为什么平均噪声为零的定义实际上符合你的直觉。你现在可能会说:只要获得足够的数据并将其平均,并且如果加速度计没有移动,那么该平均值将非常非常接近正确的答案。这就是我们可以使用的噪声方法:随时间平均,最终根据噪声的本质将噪声平均为零,真正的信号就会“水落石出”。请留意“平均时间”的概念,后面我们会用得到。

测量噪声

那么,我们如何获得非常非常准确的测量结果呢?我们需要获得很多的数据点。这些数据点仅用于一次平均。就加速度计而言,它不应该移动。为此我们将加速度计固定在稳定的桌子上,然后开始记录它输出的数据。这种设置可以使我们从地球引力场中获得几乎恒定的加速度(可以想像一些等效的设置,如温度传感器周边的温度恒定,光传感器的光通量恒定,尽管重力相对容易保持恒定)。经过很多这样的假设——我们获得大约是250万个数据——如果绘制一个没有沿着重力方向的轴(例如通常是X或Y),则数据可能如下所示:


如果将所有这些值取平均值,我们将得到沿蓝线的值。它非常接近零,为-0.008。这里可能涉及到准确性的问题(我们将在今后的文章中介绍有关准确性Accuracy和分辨率Resolution的定义和应用)。但是由于该传感器已经过校准,因此上述偏差的原因更可能是由于加速度计相对于地球重力矢量略有倾斜引起的,这会导致加速度在X或Y方向上存在一定的分量。

该传感器的噪声水平为10 mg,实际上你可以看到几乎所有的偏差都包含在蓝色平均线两侧的0.01g以内。

但是,你可能会想:这种分析仅在我们不想测量任何变化的数据时才会有效。因为你买加速度计可不只是为了测重力,你实际上希望它能够移动——在真实应用环境中测量加速度随时间的变化。为此,我们需要表征噪声随时间变化的情况,因此需要找出能够校正噪声之前,要采集数据的时间长度。


3.Allan方差

表征任何传感器性能的一种方法是测量该传感器随时间变化的程度。诀窍就是——你可以测量出方差变化的程度。下面我们仍然用上面的数据举例子,有了这些数据,我们可以找到测量噪声实际效果的方法,以及噪声随测量时间长短的变化特点。

对于许多传感器而言,存在一段理想的时间长度,在该时间长度上取平均值(或其他统计参数)可以获得噪声的最小值(至少对于某些类型的噪声)。以上面的250万个点为例,我们可以问一个问题:要以较高的信噪比达到-0.008的期望值,我们需要至少平均多少个点?这是一个很好的问题,但不幸的是,对于所获取的数据集,直到获得很多数据点之后,我们才知道-0.008这个“答案”。

所以我们使用另一种测量噪声的方法,即方差。简而言之,这个量表征数据集离散的程度。一组数字(1、2、10)的方差小于一组(1、2、100)。要了解为何方差对我们有帮助,请想象将250万个数据点分成两半。平均前一半数据,你会得到什么值?大概是-0.008。现在平均后一半数据。又得到什么值?同样的,可能为-0.008。因此,上半部平均值(-0.008)和下半部平均值(-0.008)之间的差异实际上为零。

现在,我们将每个单独的数据点视为一个“组”,而不是由125万个点组成的两组。也就是说,我们现在有250万个“组”。在这种情况下,我们做同样的事情——“平均”每个组(在这种情况下,每“组”只有一个数据),然后检查所有组平均值之间的方差。当将每个单独的点视为一个“组”时,组平均值的方差就等于传感器在以每个点的平均时间为间隔时的噪声。以上述传感器为例,两侧的平均值大约为0.01g(总计0.02g)。

因此,在这两种极端之间(125万个点组和单点组),存在“信噪比最强点或最高灵敏度点”。这个平衡点是我们需要收集的最少的“组”点数,可以最大程度地减少组平均值的方差(即,使每个组真正非常接近-0.008),但又不会太小,以至于组平均值像每个数据点为一组那样剧烈地波动。寻找Allan方差最小值,就是找到这个平衡点。

为此,我们不仅要有一个或125万个小组,而且要尝试所有组的规模。因此,我们可以遍历整个数据集,并将其分成由2个数据点构成的组,然后分别平均。然后以3,4,5 .... 10 .... 100 .... 1000等个数据点为组,分别进行平均。最后我们找到所有大小相等的数据组之间的方差。随着数据组变得越来越长,不同数据组之间的平均值会越来越接近,因为每个数据组的平均值会越来越接近“真实”的平均值。

3.1.计算

幸运的是,网上已经有很多程序可以让我们做Allan方差计算。其文档和资源可在线获得。我们利用这些程序可得到如下图:


该图显示了我们期望的结果(即,确实存在一个非常明显的点,对足够大的一组数据求平均会使噪声水平比数据数量较少的组小)。但是,这个图并不是非常有用,有两个原因:

 这种变化过于剧烈,以至于很难说出理想的组数是多少 

 方差的单位是传感器值的平方,而“加速度平方”不是一个很直观的单位 

还有一个奇怪的事实是,方差在下降之后会再次上升,我们稍后再来讨论这点。

3.2.对数——对数图

不过,我们可以通过将数据放在对数——对数图上来解决第一个问题。下降之所以如此急剧,是因为方差在较短的横轴区间内下降了几个数量级。因此,对数——对数图将给较小的数字更大的权重,并加重变化。我们可以使用Origin或者Matlab将上述数据重新作图,将横轴和纵轴都更改成对数坐标,从而得到如下图:



现在,数量级的大幅度下降显示为一条优美的倾斜线,其最小值在100秒附近清晰可见(在对数——对数图上介于10到1000之间)。以每秒50个数据点的速度进行采样,这意味着当数组的数据个数为50 x 100 = 5,000个时,所获得的方差降至最小。

在第一个线性图中方差的平方增加对应对数——对数图中的显著转折。即使在线性图上,也可以清楚看到与初始的噪声降低相比,噪声也只是略有上升的趋势。


4.Allan偏差

对数——对数图的使用仅仅解决了“计算”部分中描述的一个问题。另一个问题——方差的单位为“平方”,这使我们无法解释对数——对数图曲线上对应的Y值的概念。

为了解决这个问题,我们可以使用Allan偏差(标准偏差或标准差)而不是Allan方差。偏差是方差的平方根,因此要从Allan方差中得出Allan偏差,只需取上面计算出的每个方差的平方根即可。这会将数据单位改回我们可以直观理解的单位(即传感器实际记录的单位——加速度单位)。

但是,标准偏差的含义比方差要更难理解一点。方差是数据集合的整体分布统计,而标准差只是数据中与平均值最接近的68%的数据的分布统计。比如,如果平均值是0,而标准偏差是正负5,则该数据集的大约32%大于5且小于-5。因此,方差告诉你最高和最低范围,标准差仅告诉你大部分数据位于何处。

也就是说,偏差图更一目了然。

我们可以通过计算Allan方差的平方根,然后得到如下的Allan偏差图: 



5.如何使用Allan偏差图

使用Allan偏差图比较产品或学习如何最佳使用传感器时,可以将图中的曲线分为四个部分。当然网上还有其他有关如何解释这些图的教程。为了将不同类型噪声的影响分开,其中一些教程将Allan偏差图分成了更多部分。对于此处的实际讨论,我们省去了有关不同类型噪声的许多细节。常见的Allan偏差图的四个部分如下:


我们将在下面更深入地讨论所有这四个部分:

A点——对应的Y值是任何一次测量的噪声的标准偏差,或者以单个数据点间隔为平均时间的噪声。

B段——表示随着平均时间的增长,平均值标准偏差逐渐减小,可用于校正快速波动的噪声。

C点——最终,通过延长平均时间,噪声可以达到一个最小值。该最小值具有用户感兴趣的最优平均时间X和最小系统噪声(或信噪比为1时的灵敏度)Y值,C点也就是前文提到的“最大信噪比”所需的平均时间。

D段——在较长时间范围内的慢变噪声或系统漂移占主导,开始影响较大组的平均数据。

5.1. A点——单点噪声

Allan偏差图的起点是单个点的噪声标准偏差。因为在图的开始处, “组”的大小为1。因此,组与组之间变化的标准偏差将等于各个点的标准偏差。因此,通过对比所计算数据集的起始Allan偏差和各个点的标准偏差,可以初步确认Allan偏差计算的准确性。

请注意,对于偏差(漂移)不大于白噪声的情况,上述描述是正确的。如果偏差随时间的漂移比短时间内白噪声产生的漂移大,则数据集的标准偏差将是测量偏差,而不是白噪声标准偏差。

用于选择产品

在比较产品时,A点数值对需要尽可能少的平均数据的应用场景有很大价值。即,用户需要尽可能多的使用每个数据点,或者需要尽可能多的保留数据中的高频分量。对于大多数应用,如“噪声”部分所述,至少进行一些平均是非常有用的。

实际应用

使用传感器时,此值在尝试评估单个测量点的噪声时很有用。大约68%的测量结果将产生0.0025g的噪声误差,而32%的测量结果将具有更大的噪声误差。正如“噪声”部分中所述,要确定单个测量数据点的噪声是大是小,是正是负,实际上是不可能的。因此,将A点数值与你期望获得的测量值幅度进行比较,以及噪声误差是否会成为测量数据的重要分量,会对实际应用非常有帮助。

5.2. B段——通过平均来改善精度

随着你可以收集越来越多的数据,并将它们取平均,你可以对数据进行精度更高的提取。

用于选择产品

要使用从A点的最大值到C点的最小值的B段区间,你需要考虑自己的应用场景。你可以合理采样和平均的时长是多少?你是否想要每0.1秒获取读数或每1秒一次获取读数?如果你的应用试图在Allan偏差图中测量相对于噪声非常小的信号,则需要在可平均的时间范围内,比较不同产品的Allan偏差图。

实际应用

在可允许的采样运算时间内,通过调整平均时间的长度,抑制每单位时间的降噪量,优化系统的信噪比,同时保证系统足够的响应速度,可以帮助你更精准的微调应用场景中的数据采样和平均时间间隔。

例如,在很多四轴飞行器的应用中,通过适当平滑加速度计的输出数据,以抑制其跳跃性的噪声,可以帮助你更精准地估计GPS读数之间的飞行器位置。对于加速度数值远大于噪声的情况而言,平均可以稍微平滑这些噪声,但不会影响加速度计输出结果的准确性。因此,只要你感兴趣数据的价值足够大,且平均时间足够长而不会受到太大影响,则可以收集到更多的数据样本来更有效地过滤噪声。这种偏差建模——通过延长平均时间法——允许你沿着B段斜率向下移至一个系统可接受的响应平均时间的最小值。

但是,对于测量比采样频率更快的振动信号,这种方法将不再起作用。

5.3. C点——最小偏差(最优灵敏度)

理论上,此最小偏差是传感器的最佳精度。实际应用中,即使要达到这一水平也可能是很困难的。为此,你必须以约等于最小C点的平均时间处理数据。这需要非常特定的应用程序和采样策略。

对于例子中的加速度传感器,最佳灵敏度大约是每100秒平均一次,每秒50个采样,也即采集5000个点平均一次获得的。请记住,最佳灵敏度只是噪声的标准偏差,因此,即使在C点的输出,也将有大约三分之一的噪声大于图中显示的最小值。

用于选择产品

Allan偏差图上的最优灵敏度值,是比较不同传感器最常用的特征点。该数据点的用途是向你显示灵敏度最佳的情况。根据Allan偏差图,你可以选择采取不同的采样时间,并且在所需的灵敏度上有多少回旋余地(平均会大大提升传感器的灵敏度),但请记住,你的数据仍会在C点最小值附近产生偏差。事实上,在选择产品时,图形上的所有点都具有价值的。

5.4. D段——低频噪声

当你在此低频噪声中仅取一小部分值(例如随机噪声)时,数值变化会非常小。在越来越大的数据组中,随机噪声可能会很大。该噪声通常是多个因素的叠加,包括温度的影响,振动和随机游走等。

像其他噪声一样,真正随机噪声最终将平均为零。但是,你将必须收集非常非常长时间的数据。足够长的时间可以保证你的数据捕获任何合理的重复频率的随机噪声。但是,想象一下——假设你发现新的最小噪声点超过了数万秒的平均时间——你是否真的想对所有这些数据进行平均以确定最小偏差?这样做,你会错过所有来自传感器的真实,快速的数据,因为你一直都在等待采集足够的数据做长期平均值。

用于选择产品

即使要在曲线的较早一点进行平均,该图的这一部分仍然非常重要。这是由于这样的事实,无论平均周期如何,你仍然会经历随机或温度依赖形式的低频噪声。想象一下,一组1000个数据点的中值在整个过程中缓慢漂移。如果将每十个数据点平均一次,则可能会减轻大部分白噪声,但数据仍将漂移至以前相同的量。

在Allan偏差上做一个与X轴平行的直线,该线与Allan偏差曲线交于e和f两点,如下图所示。e点和f点虽然平均时间不同,但是检测精度其实是相同的。如果这个Allan偏差曲线最右端对应的Y值高于最左端第一个点的Y值,说明到达此点时间后,系统已经漂移超过原始未平均的灵敏度。



如果你对传感器和所收集的数据有非常清楚的了解,则可以使用软件算法校正和处理低频噪声,但这是很困难的,只能根据具体情况进行。如果这种操作在你的应用中不可行,则选择低频噪声曲线较浅的传感器将很有价值。当然,你会发现传感器的低频噪声与传感器的成本直接相关。


6.温度的影响

当温度变化时,电子系统会经历一定程度的误差变化(温飘),最终反映在噪声特性中。当查看加速计数据随时间变化时,这些温度影响并不是立即显而易见的,例如“测量噪声”部分中的图形。

但是温漂效应和其他较小的难以控制的影响使惯性导航变得极为困难。如果在室温下记录加速度计的Allan偏差图,则低频噪声特性(曲线上的D段)可能不会非常陡峭。但是,如果你使用相同的加速度计并将其置于动态温度环境中,则会发现低频噪声曲线将变得更加陡峭或难以预测。通过比较这两个Allan偏差图,并使所有其他变量保持恒定,你可以大致确定温度变化对设备的影响有多大。


参考文献:

1、Allan, D. Statistics of Atomic Frequency Standards, pages 221–230. Proceedings of the IEEE, Vol. 54, No 2, February 1966.

2、https://www.phidgets.com/docs/Allan_Deviation_Primer

3、https://en.wikipedia.org/wiki/Allan_variance

上海昕虹光电科技有限公司 版权所有 备案号:沪ICP备14038530号 sitemap