2、振动环境建模:典型振动环境(正弦、随机、冲击)的数学模型与频谱特性

做惯导这么多年,我有个很深的体会——搞不清振动环境,就别谈误差补偿。你想想看,加速度计装在导弹上、装在无人机上、装在车载导航里,遇到的振动完全不一样。如果不把这些振动环境摸透,后面做的滤波、补偿全是白搭。

这一节,我就带大家把三种最典型的振动环境——正弦振动、随机振动、冲击振动——的数学模型和频谱特性彻底搞清楚。这些都是我在项目里反复用到的,也是面试时经常被问到的。

2.1 正弦振动:最简单的周期性干扰

正弦振动,说白了就是单一频率的周期性振动。比如发动机的旋转、螺旋桨的转动,都会产生这种振动。

数学模型:

a(t) = A · sin(2πf · t + φ)

其中:

  • A — 振动幅值(m/s² 或 g)
  • f — 振动频率(Hz)
  • φ — 初始相位(rad)

频谱特性:

在频域里,正弦振动就是一根孤零零的谱线。频率为 f,幅值为 A。干净利落,没有杂波。

重要结论:正弦振动的能量全部集中在单一频率上。这意味着——如果你知道这个频率,就可以用陷波滤波器把它干掉。

我的经验:有一次做直升机惯导,旋翼的基频是 17.5Hz。我直接用了一个二阶陷波器,把加速度计输出里的这个分量干掉了。效果立竿见影,姿态角误差从 0.5° 降到了 0.1° 以内。

2.2 随机振动:最头疼的宽带干扰

随机振动才是真正的麻烦。它没有固定的频率,没有固定的幅值,像个幽灵一样飘忽不定。路面颠簸、大气湍流、发动机燃烧噪声,都属于随机振动。

数学模型:

随机振动没法用一个确定性的函数描述。我们通常用功率谱密度(PSD)来刻画它。

S(f) = lim(Δf→0) [E{X²(f, Δf)} / Δf]

单位是 (m/s²)²/Hz,或者 g²/Hz。

频谱特性:

随机振动的频谱是连续的,能量分布在很宽的频带内。常见的有:

  • 白噪声:PSD 在整个频带内是常数。理想情况,现实中很少见。
  • 粉红噪声:PSD 随频率增加而下降,每倍频程下降 3dB。很多机械振动属于这种。
  • 带限噪声:只在某个频段内有能量,比如 10Hz~500Hz。

注意:随机振动的峰值加速度可能很大,但持续时间短。做滤波器设计时,不能只看 RMS 值,还要看峰值。我曾经吃过这个亏——滤波器把 RMS 压下去了,但偶尔冒出来的尖峰直接把导航解算搞崩了。

工程中常用的 PSD 模型:

环境类型 PSD 形状 典型频段 典型幅值
车载 带限白噪声 1~100 Hz 0.01~0.1 g²/Hz
机载 粉红噪声 10~2000 Hz 0.001~0.05 g²/Hz
舰载 低频为主 0.1~10 Hz 0.1~1 g²/Hz

2.3 冲击振动:短时高能的破坏者

冲击振动持续时间极短,但幅值极大。比如导弹发射时的后坐力、无人机着陆时的撞击、设备跌落等。

数学模型:

常用的冲击模型有:

  1. 半正弦脉冲:
    a(t) = A · sin(πt/T),  0 ≤ t ≤ T
    这是最常见的冲击模型,比如跌落、撞击。
  2. 矩形脉冲:
    a(t) = A,  0 ≤ t ≤ T
    比如火箭发动机点火瞬间。
  3. 锯齿脉冲:
    a(t) = A · (1 - t/T),  0 ≤ t ≤ T
    比如爆炸冲击波。

频谱特性:

冲击信号的频谱是连续的,而且很宽。脉冲越窄,频谱越宽。这就是为什么冲击能激发出高频谐振——你想想看,一个 1ms 的脉冲,频谱能延伸到 1000Hz 以上。

关键点:冲击的频谱幅值随频率增加而下降。对于半正弦脉冲,频谱的第一个零点在 f = 1/T 处。也就是说,脉冲宽度 T 越小,第一个零点频率越高,高频能量越丰富。

避坑指南:我曾经设计过一个滤波器,专门抑制 100Hz 以上的振动。结果在冲击测试时,加速度计输出直接饱和了。为什么?因为冲击的高频分量被滤波器衰减了,但低频分量(几十 Hz)的幅值依然很大,超过了量程。所以——做冲击防护时,不能只考虑滤波,还要考虑量程和限幅。

2.4 三种振动的对比与选择

为了让大家一目了然,我把三种振动的核心特征整理成了一张表:

特征 正弦振动 随机振动 冲击振动
时域波形 周期性正弦波 无规律、随机 短时脉冲
频谱 离散谱线 连续谱 连续谱(宽频)
能量分布 单一频率 宽频带 宽频带(高频衰减)
持续时间 持续 持续 极短(ms级)
幅值特征 恒定 统计分布 峰值大、衰减快
典型来源 旋转机械 路面、湍流 撞击、发射

2.5 知识体系总览

下面这张图,是我自己画的一个知识框架。它把振动环境建模的核心逻辑串起来了——从时域到频域,从模型到应用。

振动环境建模知识体系 正弦振动 a(t)=A·sin(2πft+φ) 频谱:离散谱线 典型:旋转机械 随机振动 PSD:S(f) 描述 频谱:连续谱 典型:路面、湍流 冲击振动 半正弦/矩形/锯齿 频谱:宽频连续 典型:撞击、发射 振动误差建模与补偿 滤波器设计 误差补偿算法 传感器选型

嗯,这张图把三种振动环境的关系讲得很清楚了。从时域模型到频谱特性,再到最终的工程应用,是一条完整的链路。

我个人习惯是:拿到一个项目,先判断振动类型。如果是正弦振动,直接上陷波器;如果是随机振动,用卡尔曼滤波或者自适应滤波;如果是冲击振动,先做限幅再做滤波。顺序不能乱,否则效果差很多。

好了,这一节的内容就到这里。振动环境建模是后面所有误差消除方法的基础,希望大家能把这些数学模型和频谱特性记牢。下一节我们会讲——嗯,先不剧透了,你们先把这节消化掉。


专注资料整理