主要内容

时空自适应处理导论

本例简要介绍了时空自适应处理(STAP)技术,并说明了如何使用相控阵系统工具箱™将STAP算法应用于接收到的脉冲。STAP是一种用于机载雷达系统抑制杂波和干扰器干扰的技术。

简介

在地面运动目标指示器(GMTI)系统中,机载雷达收集地面运动目标返回的回波。然而,接收到的信号不仅包括来自目标的反射回波,还包括来自被照射地面的回波。从地面返回通常被称为杂乱

杂波来自雷达波束照射的所有区域,因此它占据了所有距离箱和所有方向。杂波总回波往往比回波信号强得多,这对目标检测提出了很大的挑战。因此,杂波滤波是GMTI系统的关键部分。

在传统的MTI系统中,杂波滤波通常利用地面不运动的特性。这样,杂波就占据了多普勒频谱的零多普勒槽。这一原理导致了许多基于多普勒的杂波滤波技术,如脉冲抵消。有兴趣的读者可以参考利用移动目标指示(MTI)雷达减缓地杂波(雷达工具箱)有关脉冲消除器的详细示例。当雷达平台本身也在运动时,例如在飞机上,从地面返回的多普勒分量不再为零。此外,杂波回波的多普勒分量与角度有关。在这种情况下,杂波返回的能量可能跨越多普勒频谱。因此,单靠多普勒频率无法对杂波进行滤波。

干扰是另一个重要的干扰源,经常出现在接收信号中。最简单的干扰形式是弹幕干扰机,它向雷达接收机发出强烈的连续白噪声,使接收机无法轻易探测到目标返回。干扰机通常位于特定的位置,因此干扰信号与特定的方向相关联。然而,由于干扰机的白噪声特性,接收到的干扰信号占据了整个多普勒频带。

STAP技术在角域和多普勒域对信号进行滤波(因此称为时空自适应处理),以抑制杂波和干扰器返回。在以下部分中,您将模拟来自目标、杂波和干扰器的返回,并说明STAP技术如何从接收到的信号中过滤干扰。

系统设置

首先定义一个雷达系统,从示例中构建的系统开始雷达接收机模拟测试信号

负载BasicMonostaticRadarExampleData.mat负载单脉冲雷达

天线的定义

假设天线元件在前半球有各向同性响应,在后半球全为零。工作频率范围设置为8 ~ 12ghz,以匹配系统的工作频率10ghz。

天线=相控。IsotropicAntennaElement...“FrequencyRange”(8 e9 12 e9),“BackBaffled”,真正的);%折边各向同性

定义具有自定义元素模式的6元素统一线性数组(ULA)。假设元素间距是波形波长的一半。

fc =散热器。操作频率;c =散热器。传播速度;Lambda = c/fc;Ula =阶段性。齿龈(“元素”、天线、“NumElements”6...“ElementSpacing”λ/ 2);模式(fc,齿龈“PropagationSpeed”c“类型”“powerdb”)标题(“六元素困惑的ULA响应模式”)视图(60、50)

雷达的设置

接下来,将天线阵列安装在散热器和收集器上。然后,定义雷达运动。雷达系统安装在离地面1000米的飞机上。飞机沿ULA的阵列轴飞行,其速度使其在一个脉冲间隔内飞行了阵列的一半元素间距。(下面的DPCA技术部分提供了对这种设置的解释。)

散热器。传感器= ula;收集器。传感器= ula;感觉运动=分阶段。平台(“InitialPosition”, (0;0;1000));arrayAxis = [0;1;0);prf =波形。prf;vr = ula.ElementSpacing*prf;% in [m/s]sensormotion。速度= vr/2*arrayAxis;

目标

接下来,定义一个非波动目标,其雷达横截面为1平方米,在地面上移动。

目标=阶段性。RadarTarget (“模型”“Nonfluctuating”“MeanRCS”, 1...“OperatingFrequency”、fc);Tgtmotion =分阶段。平台(“InitialPosition”, 1000;1000;0),...“速度”, (30;30;0]);

干扰机

目标返回所需的信号;然而,在接收到的信号中也存在一些干扰。如果您有Radar Toolbox许可证,请设置该变量hasRadarToolbox定义有效辐射功率为100瓦的简单弹幕干扰机为true。否则,模拟使用一个保存的干扰器信号。

hasRadarToolbox = false;Fs = format . samplerate;rngbin = c/2*(0:1/Fs:1/prf-1/Fs).';如果hasRadarToolbox干扰器= barrage干扰器(“ERP”, 100);干扰机。SamplesPerFrame = number (rngbin);Jammermotion =分阶段。平台(“InitialPosition”, 1000;1732;1000));结束

杂乱

本例使用gamma值为—15 dB的常量gamma模型模拟杂波。文献表明,这样的gamma值可以用来模拟森林覆盖的地形。对于每个范围,杂波回报可以被认为是该范围环上许多小杂波补丁的回报的组合。由于天线是向后折弯的,杂波的贡献只来自前面。为了简化计算,每个补丁使用10度的方位角宽度。同样,如果您没有“雷达工具箱”许可证,则模拟使用已保存的杂波信号。

如果hasRadarToolbox Rmax = 5000;Azcov = 120;杂乱= constantGammaClutter(“传感器”、齿龈“SampleRate”Fs,...“伽马”, -15,“PlatformHeight”, 1000,...“OperatingFrequency”足球俱乐部,...“PropagationSpeed”c...脉冲重复频率的脉冲重复频率,...“TransmitERP”, transmitter.PeakPower * db2pow (transmitter.Gain),...“PlatformSpeed”、规范(sensormotion.Velocity),...“PlatformDirection”(90, 0),...“ClutterMaxRange”做,...“ClutterAzimuthSpan”Azcov,...“PatchAzimuthSpan”10...“OutputFormat”“脉冲”);结束

传播路径

最后,创建一个自由空间环境来表示目标和干扰器路径。由于本例使用单站雷达系统,目标信道被设置为模拟双向传播延迟。干扰器路径只计算单向传播延迟。

Tgtchannel =相控。空闲空间(“TwoWayPropagation”,真的,“SampleRate”Fs,...“OperatingFrequency”、fc);干扰频道=分阶段。空闲空间(“TwoWayPropagation”假的,...“SampleRate”Fs,“OperatingFrequency”、fc);

模拟循环

现在可以模拟返回。收集10个脉冲。将干扰机模型中的随机数发生器的种子设置为常数以获得可重复的结果。

Numpulse = 10;脉冲数%Tsig = 0 (size(rngbin,1), ula。NumElements numpulse);Jsig = tsig;Tjcsig = tsig;Tcsig = tsig;Csig = tsig;如果hasRadarToolbox干扰机。SeedSource =“属性”;干扰机。种子= 5;杂乱。SeedSource =“属性”;杂乱。种子= 5;其他的负载STAPIntroExampleData结束M = 1:numpulse更新传感器,目标,计算传感器看到的目标角度[sensorpos,sensorvel] =感应运动(1/prf);[tgtpos,tgtvel] = tgtmotion(1/prf);[~,tgtang] = rangeangle(tgtpos,sensorpos);更新干扰器,计算传感器看到的干扰器角度如果hasRadarToolbox [jampos,jamvel] = jammermotion(1/prf);[~,jamang] = rangeangle(jampos,sensorpos);结束模拟脉冲在目标方向上的传播脉冲=波形();[pulse,txstatus] =发射器(pulse);脉冲=散热器(脉冲,tgtang);Pulse = tgtchannel(Pulse,sensorpos,tgtpos,sensorvel,tgtvel);在传感器处收集目标返回值脉冲=目标(脉冲);Tsig (:,:,m) =集电极(脉冲,tgtang);在传感器上收集干扰信号和杂波信号如果hasRadarToolbox jamsig =干扰器();Jamsig = jammerchannel(Jamsig,jampos,sensorpos,jamvel,sensorvel);Jsig (:,:,m) = collector(jamsig,jamang);Csig (:,:,m) =杂波();结束接收收集信号tjcsig(:,:,米)=接收机(tsig (:,:, m) + jsig (:,:, m) +学会(:,:,米),...~ (txstatus > 0));%目标+干扰器+杂波Tcsig (:,:,m) = receiver(tsig(:,:,m)+csig(:,:,m),,...~ (txstatus > 0));%目标+杂波Tsig (:,:,m) = receiver(Tsig (:,:,m),...~ (txstatus > 0));%目标回声结束

真实目标距离,角度和多普勒

目标方位角为45度,仰角约为-35.27度。

tgtLocation = global2localcoord(tgtpos,“rs”, sensorpos);tgtAzAngle = tgtLocation(1)
tgtAzAngle = 44.9981
tgtElAngle = tgtLocation(2)
tgtElAngle = -35.2651

目标射程1732米。

tgtRng = tgtLocation(3)
tgtRng = 1.7320e+03

目标的多普勒归一化频率约为0.21。

Sp =径向速度(tgtpos, tgtmotion。速度,...sensorpos sensormotion.Velocity);tgtDp = 2*speed2dop(sp,lambda);%往返多普勒tgtDp /脉冲重复频率
Ans = 0.2116

接收到的总信号包含来自目标、杂波和干扰器的返回信号。信号是一个三维的数据立方体(范围-按元素数量-按脉冲数量)。请注意,杂波收益主导了总收益,并掩盖了目标收益。如果不进行进一步处理,就无法检测到目标(蓝色竖线)。

ReceivePulse = tjcsig;plot([tgtRng tgtRng],[0 0.01],rngbin,abs(ReceivePulse(:,:,1)));包含(的范围(m)), ylabel (“级”);标题(ULA在第一个脉冲间隔内收集的信号

图中包含一个轴对象。名为Signals Collected by The ULA Within First Pulse Interval的axis对象包含7个类型为line的对象。

现在,在二维角度多普勒(或时空)域检查回报。一般来说,响应是通过扫描给定仰角的所有距离和方位角来生成的。因为你确切地知道目标的位置,所以你可以计算出它相对于天线阵列的距离和仰角。

tgtCellIdx = val2ind(tgtRng,c/(2*Fs));snapshot = shiftdim(ReceivePulse(tgtCellIdx,:,:));移除单例dimAngdopresp =阶段性。AngleDopplerResponse (“SensorArray”、齿龈...“OperatingFrequency”足球俱乐部,“PropagationSpeed”c...脉冲重复频率的脉冲重复频率,“ElevationAngle”, tgtElAngle);plotResponse (angdopresp快照,“NormalizeDoppler”,真正的);文本(tgtAzAngle tgtDp /脉冲重复频率,' +目标”

图中包含一个轴对象。标题为角度-多普勒响应模式的轴对象包含图像、文本两种类型的对象。

如果你观察角度多普勒响应,它是由杂波返回所主导的,你会发现杂波返回不仅占据了零多普勒,而且还占据了其他多普勒箱。杂波回波的多普勒也是角度的函数。杂波返回在整个角度多普勒空间中看起来像一条对角线。这样的一条线通常被称为杂波脊.接收到的干扰信号是白噪声,它以特定的角度(约60度)在整个多普勒频谱上传播。

用DPCA消除器抑制杂波

位移相位中心天线(DPCA)算法通常被认为是第一个STAP算法。该算法利用孔径偏移补偿平台运动,使杂波回波在脉冲间不发生变化。因此,该算法可以通过两个连续脉冲的简单相减来去除杂波。

DPCA消除器通常用于ula,但需要特殊的平台运动条件。平台必须沿着天线的阵列轴移动,并且在一个脉冲间隔内,平台移动的速度正好是单元间距的一半。这里使用的系统已经设置好,如前面部分所述,以满足这些条件。

假设N是ULA元素的个数。天线1通过天线N-1在第一个脉冲接收到的杂波与天线2通过天线N在第二个脉冲接收到的杂波相同。通过在两个脉冲间隔内减去这两个子阵列接收到的脉冲,杂波就可以抵消掉。这种方法的代价是孔径比原始数组小一个元素。

现在,定义一个DPCA取消器。算法可能需要搜索所有角度和多普勒的组合来定位目标,但对于这个例子来说,因为你确切地知道目标在哪里,所以你可以将处理器引导到那个点。

Rxmainlobedir = [0;0);Stapdpca =阶段性。DPCACanceller (“SensorArray”、齿龈脉冲重复频率的脉冲重复频率,...“PropagationSpeed”c“OperatingFrequency”足球俱乐部,...“方向”rxmainlobedir,“多普勒”tgtDp,...“WeightsOutputPort”,真正的)
Stapdpca =阶段性。带有属性的dpccancancer: SensorArray: [1x1相控。ULA] PropagationSpeed: 299792458 OperatingFrequency: 1.0000e+10 PRFSource: 'Property' PRF: 2.9979e+04 DirectionSource: 'Property' Direction: [2x1 double] NumPhaseShifterBits: 0 DopplerSource: 'Property' Doppler: 6.3429e+03 WeightsOutputPort: true PreDopplerOutput: false

首先,对目标回波和杂波回波分别应用DPCA消去器。

ReceivePulse = tcsig;[y,w] = stapdpca(ReceivePulse,tgtCellIdx);

经过处理的数据将空间和脉冲之间的所有信息组合成一个单一的脉冲。接下来,在时域中检查处理后的信号。

plot([tgtRng tgtRng],[0 1.2e-5],rngbin,abs(y));包含(的范围(m)), ylabel (“级”);标题(DPCA取消输出(无干扰器)

图中包含一个轴对象。标题为DPCA Canceller Output (no Jammer)的axes对象包含2个类型为line的对象。

现在信号和噪声已经清晰地区分开来,杂波也被过滤掉了。从下面DPCA处理器权重的角度-多普勒响应,你也可以看到权重沿杂波脊产生一个深空。

angdopresp。仰角= 0;plotResponse (angdopresp w,“NormalizeDoppler”,真正的);标题(DPCA 0度仰角权重角多普勒响应

图中包含一个轴对象。标题为DPCA的轴对象包含一个类型为图像的对象。

虽然DPCA得到的结果非常好,但是雷达平台要使用该技术必须满足非常严格的运动要求。此外,DPCA技术不能抑制干扰机干扰。

将DPCA处理应用于总信号产生如下图所示的结果。可以看到DPCA不能从信号中过滤干扰器。所得到的权重的角度多普勒模式与以前相同。因此,处理器不能适应新增加的干扰器干扰。

ReceivePulse = tjcsig;[y,w] = stapdpca(ReceivePulse,tgtCellIdx);plot([tgtRng tgtRng],[0 8e-4],rngbin,abs(y));包含(的范围(m)), ylabel (“级”);标题(DPCA取消输出(带干扰器)

图中包含一个轴对象。标题为DPCA Canceller Output(带Jammer)的axes对象包含2个类型为line的对象。

plotResponse (angdopresp w,“NormalizeDoppler”,真正的);标题(DPCA 0度仰角权重角多普勒响应

图中包含一个轴对象。标题为DPCA的轴对象包含一个类型为图像的对象。

用SMI波束形成器抑制杂波和干扰

为了同时抑制杂波和干扰,你需要一个更复杂的算法。当干扰为高斯分布时,最佳接收机权值由[1]给出

w k R - 1 年代

在哪里k是一个标量因子,R是空时协方差矩阵的干扰信号,和年代为期望的时空转向向量。的确切资料R通常不可用,因此本例使用样本矩阵反演(SMI)算法。算法估计R从训练细胞样本中提取,然后用在前面提到的方程中。

现在,定义一个SMI波束形成器并将其应用于信号。除了DPCA需要的信息外,SMI波束形成器还需要知道保护细胞的数量和训练细胞的数量。该算法使用训练单元中的样本来估计干扰。因此,不要使用接近目标单元的单元进行估计,因为它们可能包含一些目标信息,也就是说,您需要定义保护单元。保护单元的数量必须是偶数,以便在目标单元的前面和后面平均分割。训练细胞的数量也必须是偶数,并在目标的前面和后面平均分割。通常情况下,训练单元数越大,干扰估计越好。

tgtAngle = [tgtAzAngle;tgtElAngle];Stapsmi =阶段性。STAPSMIBeamformer (“SensorArray”、齿龈脉冲重复频率的脉冲重复频率,...“PropagationSpeed”c“OperatingFrequency”足球俱乐部,...“方向”tgtAngle,“多普勒”tgtDp,...“WeightsOutputPort”,真的,...“NumGuardCells”4“NumTrainingCells”, 100)
Stapsmi =阶段性。STAPSMIBeamformer属性:SensorArray: [1x1相控。ULA] PropagationSpeed: 299792458 OperatingFrequency: 1.0000e+10 PRFSource: 'Property' PRF: 2.9979e+04 DirectionSource: 'Property' Direction: [2x1 double] NumPhaseShifterBits: 0 DopplerSource: 'Property' Doppler: 6.3429e+03 NumGuardCells: 4 NumTrainingCells: 100 WeightsOutputPort: true
[y,w] = stapsmi(ReceivePulse,tgtCellIdx);plot([tgtRng tgtRng],[0 2e-6],rngbin,abs(y));包含(的范围(m)), ylabel (“级”);标题(SMI波束输出(带干扰器)

图中包含一个轴对象。标题为SMI Beamformer Output(带干扰器)的axis对象包含2个类型为line的对象。

plotResponse (angdopresp w,“NormalizeDoppler”,真正的);标题(“SMI加权角度多普勒响应在0度仰角”

图中包含一个轴对象。标题为SMI的轴对象包含一个类型为图像的对象。

结果表明,SMI波束形成器能有效地区分杂波和干扰信号。SMI权值的角度多普勒谱沿干扰器方向显示一个深空。

SMI提供了最大的自由度,因此是所有STAP算法中最大的增益。它经常被用作比较不同STAP算法的基线。

利用ADPCA消去器降低计算成本

虽然SMI是最优的STAP算法,但它有一些固有的缺点,包括由于它使用每个单元的全维数据而导致的高计算成本。更重要的是,SMI需要跨多个脉冲的静止环境。这种环境在实际应用程序中并不常见。因此,许多降维STAP算法被提出。

自适应DPCA (ADPCA)抵消器以与DPCA相同的方式过滤杂波,但它也有抑制干扰的能力,因为它使用两个连续脉冲估计干扰协方差矩阵。由于只涉及两个脉冲,计算量大大减少。此外,由于该算法对干扰有较强的适应性,还能容忍一定的运动干扰。

现在,定义一个ADPCA取消器,然后将其应用于接收到的信号。

Stapadpca =阶段性。ADPCACanceller (“SensorArray”、齿龈脉冲重复频率的脉冲重复频率,...“PropagationSpeed”c“OperatingFrequency”足球俱乐部,...“方向”rxmainlobedir,“多普勒”tgtDp,...“WeightsOutputPort”,真的,...“NumGuardCells”4“NumTrainingCells”, 100)
Stapadpca =阶段性。带有属性的adpcaccancler: SensorArray: [1x1相控。ULA] PropagationSpeed: 299792458 OperatingFrequency: 1.0000e+10 PRFSource: 'Property' PRF: 2.9979e+04 DirectionSource: 'Property' Direction: [2x1 double] NumPhaseShifterBits: 0 DopplerSource: 'Property' Doppler: 6.3429e+03 NumGuardCells: 4 NumTrainingCells: 100 WeightsOutputPort: true PreDopplerOutput: false
[y,w] = stapadpca(ReceivePulse,tgtCellIdx);plot([tgtRng tgtRng],[0 2e-6],rngbin,abs(y));包含(的范围(m)), ylabel (“级”);标题(ADPCA取消输出(带干扰器)

图中包含一个轴对象。标题为ADPCA Canceller Output(带Jammer)的axes对象包含2个类型为line的对象。

plotResponse (angdopresp w,“NormalizeDoppler”,真正的);标题(ADPCA在0度仰角的权重角多普勒响应

图中包含一个轴对象。标题为ADPCA加权角度多普勒响应0度仰角的轴对象包含一个类型为图像的对象。

时域图显示信号被成功恢复。ADPCA权值的角度多普勒响应与SMI权值产生的角度多普勒响应相似。

总结

本例简要介绍了STAP,并说明了如何使用不同的STAP算法,即SMI、DPCA和ADPCA来抑制接收脉冲中的杂波和干扰。

参考

[1]格尔奇,j.r.。雷达的时空自适应处理.Artech House雷达图书馆。波士顿:Artech House, 2003年。