3、Allan方差数学原理:Allan方差的定义、双样本方差概念、对数-对数曲线解读
好,咱们进入正题。这一节讲的是Allan方差的数学原理。说实话,很多工程师一看到数学公式就头疼,我当年也一样。但Allan方差这东西,你只要搞懂了它的核心思想,剩下的就是套公式算数了。
我个人习惯,先讲清楚它到底在干什么,再去看公式。这样你心里有底。
3.1 Allan方差的定义
Allan方差,说白了就是用来分析陀螺仪噪声成分的一种工具。它不是直接看原始数据,而是看数据的“稳定性”。
怎么理解?你想想看,陀螺仪静止时,输出应该是一个常数。但实际上,它会有波动。这个波动里藏着多种噪声:有白噪声、有随机游走、有量化噪声等等。Allan方差就是把这些噪声“拆开”来看。
它的定义是这样的:
σ²(τ) = (1/2) * ⟨(y_{k+1} - y_k)²⟩
其中:
- τ 是相关时间(也就是你取平均的时间窗口)
- y_k 是第 k 个时间窗口内的平均值
- ⟨ ⟩ 表示取期望(也就是对所有样本求平均)
嗯,这里要注意:公式里的1/2是人为定义的。为什么是1/2?为了让白噪声的Allan方差刚好等于其功率谱密度。这个细节你记住就行,不用深究。
核心理解:Allan方差衡量的是“相邻两个时间窗口的平均值之间的差异”。差异越大,说明噪声越大。
3.2 双样本方差概念
双样本方差,这个名字听起来挺唬人。其实它就是上面那个公式的另一种说法。
我举个例子。假设你有一组陀螺仪数据,每秒采一个点。你想看它在10秒内的稳定性。那你就可以把数据分成10秒一段,每段算一个平均值。然后看相邻两段平均值的差。
这个差值的方差,就是双样本方差。Allan方差本质上就是双样本方差的一半。
为什么叫“双样本”?因为它只用了两个样本(两个时间窗口的平均值)来做比较。不是用所有样本算一个方差,而是两两比较。
我在项目中遇到过一个问题:有人直接用普通方差去分析陀螺仪噪声,结果发现不同时间长度的数据算出来的方差不一样。这就是因为普通方差对时间相关性不敏感。而Allan方差通过双样本的方式,天然地解决了这个问题。
避坑指南:我曾经犯过一个错误——直接用原始数据的标准差来评估陀螺仪性能。结果发现,同样的陀螺仪,采样时间不同,标准差差了好几倍。后来改用Allan方差,才真正看清了噪声的底细。
3.3 对数-对数曲线解读
Allan方差算出来后,怎么用?通常我们会画一张图:横轴是相关时间τ(对数坐标),纵轴是Allan标准差σ(τ)(对数坐标)。这就是对数-对数曲线。
这张图是Allan方差分析的核心。为什么?因为不同的噪声成分,在这张图上的斜率是不一样的。
我整理了一个表格,方便你对照:
| 噪声类型 | 斜率 | 典型来源 |
|---|---|---|
| 量化噪声 | -1 | ADC量化误差 |
| 白噪声(角度随机游走) | -1/2 | 热噪声、电子噪声 |
| 闪烁噪声(偏置不稳定性) | 0 | 电路1/f噪声 |
| 随机游走(角速率随机游走) | +1/2 | 积分漂移 |
| 速率斜坡 | +1 | 温度漂移、老化 |
你看,斜率-1/2对应白噪声,斜率0对应闪烁噪声,斜率+1/2对应随机游走。这就是Allan方差曲线解读的基本方法。
实际解读时,我建议你这样做:
- 看曲线形状:曲线是下降的、平的、还是上升的?
- 找拐点:曲线从下降变平的那个点,对应的是偏置不稳定性的最小值。
- 读数值:在τ=1秒处的值,就是角度随机游走系数。
- 看趋势:曲线如果一直上升,说明有低频漂移。
注意:对数-对数曲线在短时间区域(τ很小)容易受量化噪声影响,长时间区域(τ很大)容易受漂移影响。中间那段才是陀螺仪的真实性能区。我见过有人只看曲线最低点,结果选了一个短时间性能好但长时间漂移大的陀螺仪,最后系统精度根本达不到要求。
下面这张图展示了Allan方差分析的核心逻辑:
最后说一句,Allan方差曲线不是万能的。它假设噪声是平稳的、各态历经的。如果你的陀螺仪有间歇性故障或者非线性效应,Allan方差可能会给出误导性的结果。这时候,我建议你结合时域分析和频域分析一起看。
总结一下:Allan方差的核心就是双样本方差,通过对数-对数曲线来识别噪声类型。记住那张斜率对照表,你就能看懂大部分陀螺仪的噪声特性了。
公众号:蓝海资料掘金营,微信deep3321