Contents — find the section you need

Change parameters and verify

Open the panel, then press Run to load Python. You can stop execution and reset parameters. Results are computed on this device. No Python installation is required.

Local execution steps below are optional for reproducing the source results; they are not required for the browser experiment.

The experiment controls are in English.

Open experiment panel in a new tab

Download reproduction source

非零的静止IMU输出并非完全由随机噪声构成。应区分平均偏移、短期离散度和不同平均时间段内的稳定性。本文使用CSV工具分析了一个陀螺仪轴,该工具已在已知属性的合成数据上验证。

建立静止条件和有效时间

固定IMU并记录预热时间、输出速率、滤波、温度、持续时间和单位。桌面振动、电缆拉力或温度变化会使仅考虑传感器噪声的解释失效。静止加速度计包含重力,因此不要将陀螺仪的近零预期直接应用于加速度。

平均角速率可能包含除偏差之外的其他因素,例如,当灵敏度和安装方式使其相关时,地球自转的影响也会影响平均角速率。ADI评估指南建议进行无干扰、温度控制的记录;其针对特定设备的采集设置并非通用IMU要求。

CSV和复现

使用time_s,gyro_rad_s列,单位为秒和弧度/秒。下载分析脚本:

python3 imu_noise.py --synthetic
python3 imu_noise.py stationary.csv

第二行是您自定义文件的另一种调用方式。合成模式使用 Python 3.12.3、NumPy 1.26.4 和 Matplotlib 3.6.3 执行。输入至少需要 100 个有限样本,时间严格递增,且区间偏差不超过中值区间的 1%。这 1% 是本次练习的验证规则,并非 IMU 规范。

不要填补数据间隙,也不要假设采样均匀。请先分割连续区间。重采样会通过插值/滤波改变噪声,这一点需要记录下来。

均值和标准差

合成输入包含 60,000 个点,采样频率为 100 Hz,采样时间为 600 秒,种子为 7:一个恒定的 0.01 rad/s 偏移量加上一个标准差为 0.002 rad/s 的独立高斯噪声。结果均值为 0.009991 rad/s,样本标准差为 0.001994 rad/s。下载 input 和 statistics。

均值表征的是该时间段内的情况,而非每个温度或功率周期。仅凭标准差不足以将缓慢变化与快速噪声区分开来。接下来,请改变平均时间。

不同平均时间下的艾伦偏差

将角速率分割成 K 个互不重叠的 m 个样本块,块均值为 ȳ。实现的统计量为:

\sigma_A(\tau)=\sqrt{\frac{1}{2(K-1)}\sum_{j=1}^{K-1}(\bar y_{j+1}-\bar y_j)^2},\qquad \tau=m\Delta t

单位仍为 rad/s。对于每个 m,无法形成完整块的尾随样本将被丢弃。相邻均值差分会抵消一个恒定的偏移量,因此仅凭艾伦偏差无法揭示其大小。NIST SP 1065 解释了定义和重叠变体。虽然该参考文献涉及频率稳定性,但此代码将相邻均值统计量应用于陀螺仪角速率。

读取合成结果

Diagram 1 · Use the button to switch views
合成白陀螺噪声的非重叠艾伦偏差(单位:rad/s)与平均时间(单位:秒)的关系。

对于独立的白噪声,平均 m 个样本可使离散度降低约 1/√m。绘制的理论曲线为 0.002/√(100τ)。较长的平均时间会导致块数减少,估计值的不确定性增加。 Allan CSV 包含相邻对。至少需要十个数据块,但末尾大约九个相邻对仍然能提供较弱的证据。

未添加偏置不稳定性或随机游走。下降的曲线并不能说明实际 IMU 的长期稳定性。要将其最小值识别为偏置不稳定性,还需要检查噪声模型、斜率和与约定相关的系数。

记录足够的条件进行比较

保存每个 τ 的模型/固件、ODR、带宽、单位、温度范围、总持续时间、缺失数据率、轴、均值、标准差和对数。ODR 是传感器的内部输出数据率,而不是主机轮询频率。即使在相同的硬件上,滤波也会改变曲线。继续采样和混叠以了解为什么仅靠提高轮询频率无法产生新的信息。

Related reading

Distinguish ODR, polling rate and bandwidth.采样和混叠:为什么更快的轮询还不够Explore another aspect of this field机器人电源设计——诊断电机启动期间的计算机重置Explore another aspect of this field边缘人工智能加速器——Coral、Jetson、Movidius