主要内容

多普勒估计

这个例子展示了单基地脉冲雷达在特定距离探测运动目标的径向速度。速度是由运动目标引起的多普勒频移得出的。我们首先确定目标在给定距离的存在,然后使用多普勒处理确定目标在该距离的径向速度。

雷达系统设置

首先,我们定义一个雷达系统。由于本例的重点是多普勒处理,因此我们使用本例中构建的雷达系统雷达接收机模拟测试信号.鼓励读者探索的细节雷达系统设计通过这个例子。

负载基本经济数据

系统仿真

目标

多普勒处理利用运动目标引起的多普勒频移。我们现在定义三个目标,通过指定它们的位置、雷达截面(RCS)和速度。

tgtpos = [[1200;1600;0], [3543.63;0;0]、[1600;0;1200]];tgtvel = [[60;80;0], [0, 0, 0], [0; 100; 0]]; tgtmotion = phased.Platform(“初始位置”tgtpos,“速度”, tgtvel);TGTRCS = [1.3 1.7 2.1];fc = radiator.OperatingFrequency;=阶段性目标。RadarTarget (“MeanRCS”,tgtrcs,“OperatingFrequency”、fc);

请注意,第一个和第三个目标都位于2000米的范围内,并且都以100米/秒的速度移动。区别在于第一个目标沿径向移动,而第三个目标沿切线方向移动。第二个目标没有移动。

环境

我们还需要为每个目标设置传播环境。由于我们使用的是单基地雷达,所以我们使用的是双向传播模型。

fs = waveform.SampleRate;频道=分阶段。空闲空间(...“SampleRate”,财政司司长,...“TwoWayPropagation”,真的,...“OperatingFrequency”、fc);

信号合成

有了雷达系统、环境和目标的定义,我们现在可以将接收到的信号模拟为目标反射的回波。模拟数据是一个数据矩阵,每一列的快时间(每个脉冲内的时间)和每一行的慢时间(脉冲之间的时间)。

我们需要在接收器上设置噪声产生的种子,以便我们能够重现相同的结果。

接收器。SeedSource =“财产”;接收器。种子= 2009;脉冲重复频率= waveform.PRF;num_pulse_int = 10;fast_time_grid = unigrid (0,1 / fs, 1 /脉冲重复频率,'[)');慢时间网格=(0:num_pulse_int-1)/prf;%预分配数组以提高处理速度rxpulses=零(numel(快速时间网格),num脉冲int);m = 1: num_pulse_int%更新传感器和目标位置[sensorpos, sensorvel] = sensormotion(1 /脉冲重复频率);[tgtpos, tgtvel] = tgtmotion(1 /脉冲重复频率);%计算传感器看到的目标角度[tgtrng,tgtang]=范围角(tgtpos,sensorpos);模拟脉冲在目标方向上的传播脉冲=波形();[txsig, txstatus] =发射机(脉冲);txsig =散热器(txsig tgtang);txsig =通道(txsig sensorpos、tgtpos sensorvel, tgtvel);%从目标反射脉冲tgtsig =目标(txsig);%在传感器处接收目标返回rxsig=收集器(tgtsig,tgtang);rxpulses(:,m)=接收器(rxsig,~(txstatus>0));终止

多普勒估计

距离检测

为了能够估计目标的多普勒频移,我们首先需要通过距离检测来定位目标。由于多普勒频移将信号功率传播到I和Q通道,我们需要依赖信号能量来进行检测。这意味着我们使用非相干检测方案。

上述示例中详细描述了检测过程,因此我们只需执行必要的步骤来估计目标距离。

%计算初始阈值pfa=1e-6;%在负载系统中,噪声带宽是采样率的一半noise_bw=receiver.SampleRate/2;npower=noisepow(noise_bw,...接收器。噪声图,接收器。参考温度);阈值=npower*db2pow(npwgnthresh(pfa,脉冲数),“非相干”));%应用匹配的过滤器并更新阈值matchingcoeff = getMatchedFilter(波形);matchedfilter =分阶段。MatchedFilter (...“系数”,匹配系数,...“GainOutputPort”,true);[rxpulses,mfgain]=匹配的过滤器(rxpulses);阈值=阈值*db2pow(mfgain);%补偿匹配滤波器延迟matchingdelay =大小(matchingcoeff, 1) 1;rxpulses =缓冲区(rxpulses (matchingdelay + 1:结束),大小(rxpulses, 1));应用时变增益来补偿与范围相关的损失性能速度=散热器.传播速度;范围门=性能速度*快速时间网格/2;λ=性能速度/fc;tvg=相控.时变增益(...“RangeLoss”2 * fspl (range_gatesλ),...“ReferenceLoss”,2*fspl(道具速度/(prf*2),λ);rxpulses=tvg(rxpulses);%检测积分脉冲的峰值[~, range_detect] = findpeaks (pulsint (rxpulses,“非相干”),...“MinPeakHeight”,sqrt(阈值));范围估计=四舍五入(范围门(范围检测))
射程估计=1×22000 3550

这些估计表明在2000米和3550米范围内存在目标。

多普勒频谱

一旦我们成功地估计了目标的距离,我们就可以估计每个目标的多普勒信息。

多普勒估计实质上是一个频谱估计过程。因此,多普勒处理的第一步就是从接收的信号中生成多普勒频谱。

匹配滤波器之后的接收信号是矩阵,其列对应于接收脉冲。与距离估计不同,多普勒处理处理沿数据矩阵行的脉冲(慢时间)处理数据。因为我们使用10个脉冲,所以有10个样本可用于多普勒处理。因为每个脉冲有一个样本,所以多普勒样本的采样频率为脉冲重复频率(PRF)。

根据傅里叶理论的预测,脉冲雷达系统能探测到的最大无模糊多普勒频移是其PRF的一半。这也转换为雷达系统可以探测到的最大明确的速度。此外,脉冲的数量决定了多普勒频谱的分辨率,这决定了速度估计的分辨率。

max_speed = dop2speed(脉冲重复频率/ 2λ)/ 2
max_speed = 224.6888
速度分辨率=2*最大速度/脉冲数
speed_res = 44.9378

如上述计算所示,在这个例子中,最大可检测的速度是225m/s,无论是接近(-225)或离开(+225)。由此产生的多普勒分辨率约为45米/秒,这意味着两个速度必须至少为45米/秒,才能在多普勒频谱中被分离。为了提高区分不同目标速度的能力,需要更多的脉冲。然而,可用脉冲的数量也受到目标径向速度的限制。由于多普勒处理被限制在一个给定的距离,在目标从一个距离库移动到下一个距离库之前,处理中使用的所有脉冲都必须被收集。

由于多普勒采样的数量通常是有限的,因此通常对序列进行零填充以插值生成的频谱。这不会提高生成频谱的分辨率,但可以改进频谱中峰值位置的估计。

多普勒频谱可以用周期图产生。我们把慢时间序列调零到256个点。

num_range_detected=numel(range_估计);[p1,f1]=周期图(rxpulses(range_detected(1),:).,[],256,prf,...“权力”“中心”);[p2, f2] =周期图(rxpulses (range_detect (2 ),:).',[], 256年,脉冲重复频率,...“权力”“中心”);

然后可以计算光谱中每个样本对应的速度。注意,我们需要考虑往返效应。

speed_vec = dop2speed (f1,λ)/ 2;

多普勒估计

为了估计与每个目标相关的多普勒频移,我们需要找到每个多普勒频谱中的峰值位置。在本例中,目标出现在两个不同的距离,因此需要对每个距离重复估计过程。

让我们首先绘制对应于2000米范围的多普勒频谱。

周期图(rxpulses (range_detect (1 ),:).',[], 256年,脉冲重复频率,“权力”“中心”);

图中包含一个轴对象。标题为“周期图功率谱估计”的轴对象包含一个line类型的对象。

请注意,我们只对检测峰值感兴趣,因此频谱值本身并不重要。从多普勒频谱图中,我们注意到低于最大峰值5 dB是一个很好的阈值。因此,我们使用-5作为归一化多普勒频谱的阈值。

spectrum_data = p1 / max (p1);[~, dop_detect1] = findpeaks (pow2db (spectrum_data),“MinPeakHeight”5);sp1 = speed_vec (dop_detect1)
sp1 =2×1-103.5675 3.5108

结果表明,在2000 m距离有两个目标,一个速度为3.5 m/s,另一个速度为-104 m/s。-104米/秒的值可以很容易地与第一个目标联系起来,因为第一个目标以100米/秒的径向速度离开,考虑到本例的多普勒分辨率,这个值非常接近估价值。3.5 m/s这个值需要更多的解释。由于第三个目标是沿切向运动,所以在径向上没有速度分量。因此,雷达无法检测到第三目标的多普勒频移。因此第三个目标的真视向速度为0 m/s,估计为3.5 m/s非常接近真值。

请注意,仅使用距离估计无法识别这两个目标,因为它们的距离值相同。

然后对3550米范围内的数据应用相同的操作。

周期图(rxpulses (range_detect (2 ),:).',[], 256年,脉冲重复频率,“权力”“中心”);

图中包含一个轴对象。标题为“周期图功率谱估计”的轴对象包含一个line类型的对象。

spectrum_data = p2 / max (p2);[~, dop_detect2] = findpeaks (pow2db (spectrum_data),“MinPeakHeight”5);sp2 = speed_vec (dop_detect2)
sp2 = 0

这个结果显示了估计的速度为0米/秒,这与目标在这个范围内没有移动的事实相匹配。

总结

这个例子展示了一个简单的方法估计径向速度的运动目标使用脉冲雷达系统。我们从接收信号中生成多普勒频谱,并从频谱中估计峰值位置。这些峰值位置对应于目标的径向速度。文中还讨论了多普勒处理的局限性。