3. 零偏与尺度因子定义
在陀螺标定工作中,工程师最先接触、也最容易混淆的,是一组看似相近却描述不同物理特性的术语:零偏、零偏稳定性、零偏重复性、尺度因子、尺度因子非线性、交叉耦合。它们分别回答不同的问题——陀螺在零输入时输出多少?这个输出随时间漂移多快?重新上电后是否回到同一位置?输入角速度与输出之间的比例是否准确?比例关系是否随输入大小变化?一个轴的输入是否串扰到另一个轴?只有把这些术语的物理含义、单位、测试条件和工程用途区分清楚,后续的标定方案设计、数据处理和误差补偿才有正确的落脚点。
一、零偏:零输入下的输出截距
零偏(Bias)是指陀螺在输入角速度为零时,其输出量折算成的等效角速度,单位通常为 °/h 或 °/s。从数学模型看,若把陀螺的输入输出关系近似为一条直线,零偏就是这条直线在输出轴上的截距。它反映的是陀螺内部存在一个不随真实转动而变化的系统性偏置,来源包括敏感结构的机械失配、检测电路的直流失调、解调相位误差以及温度引起的应力等。
零偏是一个“静态量”的概念:在某一确定温度、某一确定通电时刻测得的零偏值,就是一个具体数字。工程上常说的“零偏标定”,就是通过采集静止状态下的陀螺输出均值,估计出这个截距,并在后续解算中把它减掉。需要注意的是,零偏本身会随温度和时间变化,因此单次测得的零偏只在该条件下有效。
二、零偏稳定性与零偏重复性:两个容易混淆的“变化”
零偏稳定性(Bias Stability)描述的是同一次通电、同一温度条件下,零偏随时间波动的程度。通常用一段时间内零偏数据的标准差(1σ)表示,单位 °/h。它回答的是“陀螺静止不动时,输出自己会漂多少”。零偏稳定性是陀螺精度分级的重要指标,直接决定惯导系统在纯惯性工作时的姿态发散速度。
零偏重复性(Bias Repeatability)描述的是多次通电之间零偏的一致性。做法是让陀螺反复上电、断电,每次充分预热后测量零偏,再统计这些零偏值的标准差。它回答的是“这次开机和上次开机,零偏是否一样”。重复性差意味着每次启动都需要重新估计零偏,对快速启动、免对准的应用影响很大。
一句话区分:零偏稳定性看“一次通电内的时间波动”,零偏重复性看“多次通电间的启动差异”。两者单位相同,物理来源和测试流程完全不同。
三、尺度因子及其非线性
尺度因子(Scale Factor)是陀螺输出增量与输入角速度(或角度)之间的比例系数,单位常见为 LSB/(°/s)、mV/(°/s) 或脉冲数/(°)。它对应输入输出直线的斜率。理想情况下,尺度因子是一个常数,输入加倍、输出也加倍。但实际器件中,斜率会随输入量程、温度、振动等条件变化。
尺度因子非线性(Scale Factor Nonlinearity)描述的是:在规定的输入角速度范围内,实际输出与“由标称尺度因子拟合出的直线”之间的最大偏差,通常以满量程的百分比表示。它衡量的是输入输出关系“弯不弯”。非线性误差无法用单一比例系数补偿,往往需要分段拟合或多项式建模。
尺度因子还常伴随不对称性(正负输入方向斜率不同)和温度系数(斜率随温度漂移),这些都属于尺度因子误差家族的成员,在标定时需要分别激励正、负角速度来辨识。
四、交叉耦合:轴与轴之间的串扰
交叉耦合(Cross-Coupling)又称轴间耦合或非正交误差,指沿某一敏感轴输入的角速度,在另一轴输出中产生了不应有的响应。例如绕 X 轴转动时,Y 轴陀螺输出不为零。其来源包括敏感轴安装不正交、封装应力、电极间电容耦合等。交叉耦合通常用耦合系数矩阵描述,单位也是百分比或无量纲比值。
在单轴标定中,交叉耦合容易被忽略;但在三轴 IMU 中,它会造成姿态解算的耦合误差,尤其在多轴同时转动时更明显。因此高精度标定通常采用三轴速率转台,进行多位置、多速率的组合激励,才能把零偏、尺度因子和交叉耦合一起辨识出来。
五、核心术语对照清单
| 术语 | 物理含义 | 典型单位 | 测试条件 | 工程用途 |
|---|---|---|---|---|
| 零偏 | 零输入时的输出截距 | °/h | 静止、恒温、单次通电 | 输出补偿、初始对准 |
| 零偏稳定性 | 单次通电内零偏的时间波动 | °/h (1σ) | 长时间静止采集 | 精度分级、姿态发散评估 |
| 零偏重复性 | 多次通电间零偏的一致性 | °/h (1σ) | 反复上电、充分预热 | 启动重复性、免对准能力 |
| 尺度因子 | 输出与输入的比值(斜率) | LSB/(°/s) | 多速率正负激励 | 角速度解算、量程换算 |
| 尺度因子非线性 | 实际曲线偏离拟合直线的程度 | %FS | 全量程多点激励 | 分段拟合、多项式补偿 |
| 交叉耦合 | 一轴输入在另一轴产生的响应 | % 或比值 | 三轴分别激励 | 轴间解耦、安装误差补偿 |
六、典型场景:从一组静止数据看术语差异
假设某 MEMS 陀螺在恒温 25 ℃ 下连续采集 1 小时静止数据,计算得到零偏为 12.5 °/h,1 小时数据的标准差为 0.8 °/h,则零偏为 12.5 °/h,零偏稳定性为 0.8 °/h。随后断电重启 10 次,每次预热 5 分钟后测得零偏分别为 12.3、12.8、12.1、13.0、12.6、12.4、12.9、12.2、12.7、12.5 °/h,其标准差约 0.3 °/h,这就是零偏重复性。
再将该陀螺装在速率转台上,分别输入 ±10、±50、±100、±200 °/s,记录输出并拟合直线,得到尺度因子为 16.4 LSB/(°/s),最大非线性偏差为 0.15 %FS。若绕 X 轴输入 100 °/s 时,Y 轴输出折算为 0.4 °/s,则 X 到 Y 的交叉耦合约为 0.4 %。
# 零偏与稳定性计算示例(伪代码)
data = read_gyro_static(duration=3600s, temp=25C)
bias = mean(data) # 零偏: 12.5 °/h
bias_stability = std(data) # 零偏稳定性: 0.8 °/h
# 零偏重复性
biases = [measure_bias_after_power_on() for i in range(10)]
bias_repeatability = std(biases) # 零偏重复性: 0.3 °/h
# 尺度因子与非线性
rates = [-200,-100,-50,-10,10,50,100,200]
outputs = read_gyro_at_rates(rates)
k, b = linear_fit(rates, outputs) # 尺度因子 k, 零偏 b
nonlinearity = max(abs(outputs - (k*rates+b))) / full_scale
七、常见误区与复盘要点
- 把零偏稳定性当成零偏:零偏是均值,稳定性是标准差,两者数值可能相差一个数量级,混用会导致补偿量错误。
- 忽略预热时间:零偏重复性测试若不统一预热时间,测得的差异中会混入温度漂移,重复性被高估。
- 用单速率点算尺度因子:只在一个速率点测量无法发现非线性,必须覆盖正负、多量程点。
- 把交叉耦合当噪声:交叉耦合是确定性误差,可通过标定矩阵补偿;噪声是随机误差,只能滤波抑制。
- 温度条件不记录:零偏、尺度因子都随温度变化,标定报告中必须注明温度点和温控条件。
标定前先明确目标:若关注长时间导航精度,重点看零偏稳定性;若关注快速启动,重点看零偏重复性;若关注大角速度动态场景,重点看尺度因子非线性与交叉耦合。不同目标对应不同的测试激励设计和数据处理方法。
把上述术语放回标定流程中,可以看到一条清晰的逻辑链:先用静止数据分离零偏与零偏稳定性,再用多次上电数据评估零偏重复性,接着用多速率正负激励拟合尺度因子并计算非线性,最后用三轴组合激励辨识交叉耦合。每一步的测试条件不同,得到的参数含义也不同。理解这些定义,是后续设计标定路径、编写数据处理脚本和评估补偿效果的基础。