4、干扰信号建模:高斯白噪声模型、单音/多音干扰模型、脉冲干扰模型、扫频干扰模型

各位同学,咱们今天聊聊干扰信号的建模。说实话,搞无人机通信这么多年,我最大的体会就是:你连对手长什么样都不知道,怎么跟它打?干扰信号建模,说白了就是给敌人画个像。你画得越准,你的抗干扰设计就越有针对性。

我个人习惯把干扰模型分成四大类:高斯白噪声、单音/多音、脉冲、扫频。这四种模型基本覆盖了90%以上的实战场景。咱们一个一个来看。

4.1 高斯白噪声模型

这是最基础的干扰模型。什么叫高斯白噪声?功率谱密度在整个频段内均匀分布,幅度服从高斯分布。嗯,这里要注意:白噪声不一定非得是高斯分布,但高斯分布的白噪声在数学上最好处理,所以大家都用它。

我记得刚入行那会儿,有个老工程师跟我说:「小张,高斯白噪声就是通信系统的背景底色。」后来我才明白这句话的意思——任何通信系统,只要开机,就躲不开热噪声。而干扰机要做的,就是把这种背景噪声的功率抬高,抬到你的信号被淹没为止。

数学模型:

高斯白噪声的时域采样值 n(t) 服从 N(0, σ²) 分布。功率谱密度为 N₀/2(双边),或 N₀(单边)。

在MATLAB里生成高斯白噪声很简单:

% 生成1000个高斯白噪声采样点
N = 1000;
noise = sqrt(N0/2) * randn(1, N);  % N0是单边功率谱密度

避坑指南:我曾经在测试一个跳频系统时,直接用randn生成了噪声,结果发现仿真结果跟实测对不上。查了半天才发现——randn生成的是零均值单位方差的噪声,你得根据实际带宽和采样率换算功率。这个坑我踩过,你们就别再踩了。

4.2 单音/多音干扰模型

单音干扰,说白了就是一个频率点上的正弦波。你想想看,如果干扰机把你的导频频率或者载波频率给盯上了,那你的同步和载波恢复就全完蛋。

多音干扰就是多个单音的组合。为什么会有多音?因为干扰机不知道你的确切工作频率,就撒一把钉子,总有一颗扎到你。我在项目中遇到过一种情况:敌方用多音干扰覆盖了整个ISM频段,我们的WiFi图传直接瘫痪。

数学模型:

单音干扰:J(t) = A·cos(2πfⱼt + φ)

多音干扰:J(t) = Σᵢ Aᵢ·cos(2πfᵢt + φᵢ)

代码实现也很直接:

% 单音干扰
fs = 10e6;  % 采样率10MHz
t = 0:1/fs:1e-3;  % 1ms时长
fj = 2.4e9;  % 干扰频率2.4GHz
J_single = A * cos(2*pi*fj*t + phi);

% 多音干扰(3个音)
freqs = [2.4e9, 2.405e9, 2.41e9];
amps = [1, 0.8, 0.6];
J_multi = sum(amps' .* cos(2*pi*freqs' * t + rand(3,1)*2*pi), 1);

个人经验:对付多音干扰,我建议优先保护导频和同步信道。因为数据信道可以靠纠错码硬扛,但同步丢了就全丢了。

4.3 脉冲干扰模型

脉冲干扰,就是短时间内功率极高、持续时间极短的干扰。为什么会有这种干扰?因为有些干扰机功率有限,它把能量集中在一瞬间打出去,峰值功率可以做到平均功率的几十倍。

你想想看,如果你的接收机AGC(自动增益控制)反应不够快,一个强脉冲打过来,整个接收机前端就饱和了。我做过一个测试:占空比1%的脉冲干扰,平均功率只有-10dBm,但峰值功率达到+20dBm,结果接收机直接阻塞了3ms——这3ms里所有数据全丢。

数学模型:

J(t) = A·rect((t - t₀)/τ) · cos(2πfⱼt + φ)

其中τ是脉冲宽度,t₀是脉冲起始时间,rect是矩形窗函数。

生成脉冲干扰的代码:

% 脉冲干扰
fs = 10e6;
t = 0:1/fs:10e-3;  % 10ms时长
tau = 100e-6;  % 脉冲宽度100us
T = 1e-3;      % 脉冲周期1ms(占空比10%)

% 生成脉冲位置
pulse_pos = mod(t, T) < tau;
J_pulse = A * pulse_pos .* cos(2*pi*fj*t);

警告:脉冲干扰对OFDM系统杀伤力极大。因为OFDM符号周期通常较长(几毫秒),一个脉冲可能打掉整个符号。我曾经在测试中看到,10%占空比的脉冲干扰,让OFDM系统的误码率从10⁻⁶飙升到10⁻²。

4.4 扫频干扰模型

扫频干扰,就是干扰频率随时间线性或非线性变化。为什么会有这种干扰?因为跳频通信的频率在跳,干扰机就跟着扫——你跳到哪,我扫到哪。

我个人觉得,扫频干扰是最难对付的干扰之一。为什么?因为它既有宽带干扰的覆盖能力,又有窄带干扰的功率集中优势。你想想看,一个扫频干扰器,每秒扫过100MHz带宽,每个频率点停留10μs——你的跳频系统如果跳速不够快,就会被它追上。

数学模型:

线性扫频:J(t) = A·cos(2π(f₀ + k·t)·t + φ)

其中k = (f₁ - f₀)/T是扫频速率,T是扫频周期。

代码实现:

% 线性扫频干扰
fs = 20e6;
t = 0:1/fs:10e-3;
f0 = 2.4e9;   % 起始频率
f1 = 2.5e9;   % 终止频率
T = 5e-3;     % 扫频周期5ms

k = (f1 - f0) / T;
J_sweep = A * cos(2*pi*(f0*t + 0.5*k*t.^2));

避坑指南:我曾经在仿真扫频干扰时,直接用上面的公式生成了信号,结果频谱分析发现频率范围不对。后来才意识到——瞬时频率是f₀ + k·t,但相位是积分结果,不是简单的乘积。上面代码里的0.5*k*t²才是正确的相位表达式。

4.5 四种干扰模型的对比与选择

好了,四种模型都讲完了。咱们做个对比,方便你以后选型:

干扰类型 频域特征 时域特征 主要攻击目标 抗干扰手段
高斯白噪声 均匀覆盖全频段 平稳随机 所有信号 扩频、高发射功率
单音/多音 离散谱线 正弦波 导频、载波、特定信道 陷波滤波、跳频
脉冲干扰 宽带(时域窄) 短时高功率 接收机前端、AGC 限幅器、时间分集
扫频干扰 时变窄带 频率扫描 跳频系统 快速跳频、自适应陷波

最后说一句:实际战场上的干扰往往是混合的。我见过一个案例,干扰机先用扫频干扰压制跳频,再用脉冲干扰打掉OFDM符号,最后用高斯白噪声填满整个频段。所以,建模的时候别只建一种,要建组合模型。这才是实战思维。

嗯,这一节就到这儿。下一节咱们讲抗干扰技术总览,到时候我会把扩频、跳频、自适应滤波这些手段串起来讲。你们先把这四种干扰模型吃透,后面才好理解为什么要有那些抗干扰设计。