主要内容

利用模糊函数进行波形分析

这个例子说明了如何使用模糊函数来分析波形。比较了矩形波形、线性和阶跃调频波形等几种基本波形的范围和多普勒能力。

在雷达系统中,雷达波形的选择在使系统能够在距离或速度上分离两个距离很近的目标方面起着重要作用。因此,经常有必要检查一个波形,并了解其分辨率和模糊的范围和速度域。在雷达中,用时延测量距离,用多普勒频移测量速度。因此,距离和速度与延迟和多普勒可互换使用。

简介

为了提高信噪比,现代雷达系统经常在接收链中采用匹配滤波器。当指定的波形作为滤波器输入时,波形的模糊函数精确地表示匹配滤波器的输出。这种精确的表示使得模糊函数成为设计和分析波形的流行工具。这种方法提供了对给定波形在延迟和多普勒域的分辨能力的洞察。基于这种分析,人们可以确定一个波形是否适合于特定的应用。

下面几节使用模糊函数来探讨几种流行波形的距离-多普勒关系。为了建立一个比较基线,假设雷达系统的设计规范要求最大明确距离为15公里,距离分辨率为1.5公里。为了简单起见,也用3e8米/秒作为光速。

Rmax = 15e3;Rres = 1500;C = 3e8;

根据前面提到的设计规范,脉冲重复频率(PRF)和波形的带宽可以计算如下。

prf = c/(2*Rmax);bw = c/(2*Rres);

选择两倍于带宽的采样频率。

Fs = 2*bw;

矩形脉冲波形

雷达系统最简单的波形可能是矩形波形,有时也称为单频波形.对于矩形波形,脉冲宽度是带宽的倒数。

矩形波形可以如下所示创建。

矩形波形=相控。RectangularWaveform (“SampleRate”fs,...脉冲重复频率的脉冲重复频率,“脉冲宽度”1 / bw)
矩形波形=相控。矩形波与属性:SampleRate: 200000 DurationSpecification: '脉冲宽度' PulseWidth: 1.0000e-05 PRF: 10000 PRFSelectionInputPort: false FrequencyOffsetSource: '属性' FrequencyOffset: 0 OutputFormat: '脉冲' numpulse: 1 PRFOutputPort: false compresentsoutputport: false

因为波形的分析总是在满脉冲时执行,所以保持OutputFormat属性为“脉冲”。还可以使用带宽法检查波形的带宽。

Bw_rect =带宽(矩形波形)
Bw_rect = 1.0000e+05

得到的带宽与需求相匹配。现在,生成一个波形脉冲,然后用模糊度函数检查它。

Wav =矩形波形();ambgfun (wav, rectwaveform.SampleRate, rectwaveform.PRF);

图中包含一个axes对象。带有标题歧义函数的axis对象包含一个类型为contour的对象。

在图中,请注意,非零响应只占所有延迟的10%左右,集中在延迟0附近的狭窄地带。这是因为波形占空比为0.1。

dc_rect = dutycycle(rectwaveform.PulseWidth,rectwaveform.PRF)
Dc_rect = 0.1000

在研究波形的分辨能力时,波形模糊函数的零延迟切割和零多普勒切割通常是令人感兴趣的。

模糊函数的零多普勒切割返回矩形波形的自相关函数(ACF)。可以使用以下命令绘制切割。

ambgfun (wav, rectwaveform.SampleRate rectwaveform.PRF,“切”“多普勒”);

图中包含一个axes对象。带有标题模糊函数的轴对象,0 kHz多普勒切割包含一个类型为线的对象。

模糊度函数的零多普勒切割描述了目标静止时的匹配滤波响应。从图中可以看到,第一个空响应出现在10微秒处,这意味着该波形可以解析两个至少10微秒或1.5公里相距的目标。因此,响应符合设计规范中的要求。

可以使用类似的语法绘制零延迟切点。

ambgfun (wav, rectwaveform.SampleRate rectwaveform.PRF,“切”“延迟”);

图中包含一个axes对象。带有标题歧义函数的axis对象,0延迟切割包含一个类型为line的对象。

注意,返回的零延迟响应相当广泛。第一个零值直到边缘才出现,这对应于100千赫的多普勒频移。因此,如果两个目标在相同的范围内,它们需要在多普勒域中有100 kHz的差异才能被分离。假设雷达工作在1 GHz,根据下面的计算,这样的分离对应着30千米/秒的速度差。因为这个数字太大了,基本上无法用这个系统在多普勒域中分离两个目标。

Fc = 1e9;Deltav_rect = dop2speed(100e3,c/fc)
Deltav_rect = 30000

在这一点上,可能有必要提一下矩形波形的另一个问题。对于矩形波形,距离分辨率由脉冲宽度决定。因此,为了获得良好的距离分辨率,系统需要采用非常小的脉冲宽度。同时,系统还需要能够向空间发送足够的能量,以便能够可靠地检测到返回的回声。因此,窄脉冲宽度要求发射机的峰值功率非常高。实际上,生产这样的电力可能非常昂贵。

线性调频脉冲波形

从上一节可以看出,单个矩形脉冲的多普勒分辨率相当差。事实上,单个矩形脉冲的多普勒分辨率由其脉冲宽度的倒数给出。回想一下,矩形波形的延迟分辨率是由其脉冲宽度给出的。显然,矩形波形的距离分辨率和多普勒分辨率之间存在利益冲突。万博 尤文图斯

这里的根本问题是延迟和多普勒分辨率都以相反的方式依赖于脉冲宽度。因此,解决这个问题的一种方法是想出一个波形来解耦这种依赖。这样就可以同时提高这两个领域的分辨率。

线性调频波形就是这样一种波形。线性调频波形的距离分辨率不再取决于脉冲宽度。相反,范围分辨率是由扫描带宽决定的。

在线性调频波形中,由于距离分辨率现在由扫描带宽决定,系统可以提供更长的脉冲宽度。因此,降低了对电源的要求。同时,由于脉冲宽度增大,多普勒分辨率提高。即使线性调频波形的多普勒分辨率仍然由脉冲宽度的倒数给出,这种改进也会发生。

现在,详细探讨线性调频波形。提供所需距离分辨率的线性调频波形可以构造如下。

lfm波形=相控。LinearFMWaveform (“SampleRate”fs,...“SweepBandwidth”bw,脉冲重复频率的脉冲重复频率,“脉冲宽度”5 / bw)
lfm波形=相控。线性fm波形与属性:SampleRate: 200000 DurationSpecification: '脉冲宽度' PulseWidth: 5.0000e-05 PRF: 10000 PRFSelectionInputPort: false SweepBandwidth: 100000 SweepDirection: 'Up' SweepInterval: 'Positive' Envelope: '矩形' FrequencyOffsetSource: 'Property' FrequencyOffset: 0 OutputFormat: 'Pulse ' numpulse: 1 PRFOutputPort: false relationentsoutputport: false

脉冲宽度是本例前面部分中使用的矩形波形的5倍。注意,线性调频波形的带宽与矩形波形相同。

Bw_lfm =带宽(lfm波形)
Bw_lfm = 100000

线性调频波形的零多普勒切割出现在下一个图中。

Wav = lfm波形();ambgfun (wav, lfmwaveform.SampleRate lfmwaveform.PRF,“切”“多普勒”);

图中包含一个axes对象。带有标题模糊函数的轴对象,0 kHz多普勒切割包含一个类型为线的对象。

从上面的图中可以看出,即使响应现在有了旁瓣,第一个空值仍然在10微秒时出现,因此保持了距离分辨率。

也可以绘制线性调频波形的零延迟切割。观察多普勒域中的第一个零值现在在20 kHz左右,这是原始矩形波形的1/5。

ambgfun (wav, lfmwaveform.SampleRate lfmwaveform.PRF,“切”“延迟”);

图中包含一个axes对象。带有标题歧义函数的axis对象,0延迟切割包含一个类型为line的对象。

按照与本例前面部分中矩形波形相同的程序,可以计算出20 kHz多普勒分离转化为6千米/秒的速度差。这种分辨率是矩形波形的5倍。不幸的是,这样的决议仍然是不够的。

Deltav_lfm = dop2speed(20e3,c/fc)
Deltav_lfm = 6000

人们也可能对线性调频波形的模糊函数的三维图感兴趣。如果您想要看到一个三维图形而不是等高线格式,您可以只获得返回的歧义函数,然后使用您喜欢的格式绘制它。例如,下面的代码片段生成了线性FM波形模糊函数的曲面图。

[afmag_lfm,delay_lfm,doppler_lfm] = ambgfun(wav, lfm波形。SampleRate,...lfmwaveform.PRF);冲浪(delay_lfm * 1 e6, doppler_lfm / 1 e3, afmag_lfm,“线型”“没有”);轴;网格;视图([140,35]);colorbar;包含(“延迟\tau(我们)”); ylabel (“多普勒f_d (kHz)”);标题(“线性调频脉冲波形模糊函数”);

图中包含一个axes对象。标题为线性FM脉冲波形模糊函数的轴对象包含一个类型为曲面的对象。

注意,与矩形波形的模糊函数相比,线性FM波形的模糊函数略有倾斜。倾斜在零延迟切割中提供了改进的分辨率。矩形波形和线性调频波形的模糊函数都具有长而窄的边缘形状。这种模糊函数通常被称为“刀口”模糊函数。

在进一步改进多普勒分辨率之前,有必要看看在波形分析中使用的一个重要的优点图。脉冲宽度和波形带宽的乘积称为波形时间带宽乘积.对于矩形波形,时间带宽乘积总是1。对于线性调频波形,由于带宽和脉冲宽度的解耦,时间带宽可以大于1。刚刚使用的波形具有5的时间带宽乘积。回想一下,通过保持与矩形波形相同的距离分辨率,线性FM波形实现了比矩形波形好5倍的多普勒分辨率。

相干脉冲序列

正如上一节所述,线性调频波形的多普勒分辨率仍然相当差。提高分辨率的一种方法是进一步扩展脉冲宽度。然而,由于两个原因,这种方法将不起作用:

  • 波形的占空比已经达到50%,接近实际极限。(即使可以使用100%占空比,也只是2倍的改进,这远远不能解决问题。)

  • 较长的脉冲宽度意味着较大的最小探测范围,这也是不可取的。

如果不能在一个脉冲内扩展脉冲宽度,就必须越过这个边界。事实上,在现代雷达系统中,多普勒处理经常使用相干脉冲序列。脉冲序列中的脉冲数越多,多普勒分辨率越好。

为了说明这个想法,接下来,试试五脉冲爆发。

释放(lfmwaveform);lfmwaveform。num豆类= 5;Wav = lfm波形();

首先,绘制模糊度函数的零多普勒切点。

ambgfun (wav, lfmwaveform.SampleRate lfmwaveform.PRF,“切”“多普勒”);

图中包含一个axes对象。带有标题模糊函数的轴对象,0 kHz多普勒切割包含一个类型为线的对象。

注意,对于零多普勒切,第一个零值仍然在10微秒左右,因此距离分辨率是相同的。人们应该立即看到许多距离域旁瓣的存在。这些旁瓣是使用脉冲序列的折衷方案。主瓣和第一副瓣之间的距离是整个脉冲的长度,即PRF的倒数。可以看到,这个值对应于最大的明确范围。

T_max = 1/prf
T_max = 1.0000e-04

由于脉冲序列,零延迟切割也有旁瓣。主瓣和第一副瓣之间的距离是PRF。因此,这个值是雷达系统能探测到的最大无歧义多普勒。还可以计算相应的最大明确速度。

ambgfun (wav, lfmwaveform.SampleRate lfmwaveform.PRF,“切”“延迟”);

图中包含一个axes对象。带有标题歧义函数的axis对象,0延迟切割包含一个类型为line的对象。

V_max = dop2speed(lfmform . prf,c/fc)
V_max = 3000

然而,注意到主瓣现在锐利多了。仔细的检查显示第一个空大约在2千赫。多普勒分辨率实际上可以通过下面的等式得到,

Deltaf_train = lfm波形。脉冲重复频率/ 5
Deltaf_train = 2000

也就是说,分辨率现在是由整个脉冲序列的长度决定的,而不是单个脉冲的脉冲宽度。相应的速度分辨率是现在

Deltav_train = dop2speed(deltaf_train,c/fc)
Deltav_train = 600

这明显更好。更重要的是,要获得更精细的速度分辨率,只需增加脉冲序列中包含的脉冲数即可。当然,脉冲的数量取决于是否能在整个持续时间内保持相干性,但这个讨论超出了本例的范围。

人们可能会注意到,在零延迟切割中,峰值之间的距离不再是恒定的,特别是对于较远的旁瓣。这是因为线性调频波形的模糊函数是倾斜的。因此,判断零延迟切割中的旁瓣分离可能会产生误导。脉冲序列引起的模糊可能最好用轮廓形式来观察,如下一个代码示例所示。注意,沿着模糊度函数的边缘,那些旁瓣确实是均匀间隔的。

ambgfun (wav, lfmwaveform.SampleRate, lfmwaveform.PRF);

图中包含一个axes对象。带有标题歧义函数的axis对象包含一个类型为contour的对象。

由于有大量的旁瓣,所以称为这种模糊函数铁钉床模糊度函数。

阶梯调频波形

线性调频波形在雷达系统中有着广泛的应用。然而,它确实给硬件带来了一些挑战。首先,硬件必须能够在一次脉冲中扫描整个频率范围。使用这种波形也使得建立接收器变得更加困难,因为它必须适应整个带宽。

为了避免这些问题,您可以使用阶梯式调频波形代替。阶梯式调频波形由多个连续连续脉冲组成。每个脉冲都有不同的频率,所有脉冲一起占据了整个带宽。因此,在脉冲内不再有更多的扫描,接收器只需要容纳带宽是单个脉冲的脉冲宽度的倒数。

接下来,设置这样的阶梯式调频波形。

步进波形=相控。SteppedFMWaveform (“SampleRate”fs,...“脉冲宽度”5 / bw,脉冲重复频率的脉冲重复频率,“NumSteps”5,“FrequencyStep”bw / 5,...“NumPulses”5)
步进波形=相控。steppedfmwavewithproperties: SampleRate: 200000 DurationSpecification: 'Pulse width' PulseWidth: 5.0000e-05 PRF: 10000 PRFSelectionInputPort: false FrequencyStep: 20000 NumSteps: 5 FrequencyOffsetSource: 'Property' FrequencyOffset: 0 OutputFormat: 'Pulse ' numpulse: 5 PRFOutputPort: false compresentsoutputport: false
Wav = stepfm波形();

模糊度函数的零多普勒切割、零延迟切割和等高线图如下图所示。

ambgfun (wav, stepfmwaveform.SampleRate stepfmwaveform.PRF,“切”“多普勒”);

图中包含一个axes对象。带有标题模糊函数的轴对象,0 kHz多普勒切割包含一个类型为线的对象。

ambgfun (wav, stepfmwaveform.SampleRate stepfmwaveform.PRF,“切”“延迟”);

图中包含一个axes对象。带有标题歧义函数的axis对象,0延迟切割包含一个类型为line的对象。

ambgfun (wav, stepfmwaveform.SampleRate, stepfmwaveform.PRF);

图中包含一个axes对象。带有标题歧义函数的axis对象包含一个类型为contour的对象。

从这些数字可以看出以下几点:

  • 第一个空延迟仍然是10微秒,因此保持了距离分辨率。注意,因为每个脉冲都是不同的,所以距离域中的旁瓣消失了。

  • 第一个多普勒零值仍然在2千赫,因此它具有与5脉冲线性调频脉冲串相同的多普勒分辨率。多普勒域的旁瓣仍然像线性调频脉冲串一样存在。

  • 阶梯调频波形的等高线图也是钉子型床的等高线图。虽然无歧义范围大大扩大,但无歧义多普勒仍然受到波形PRF的限制。

由于阶梯式调频波形的缺点,使处理更加复杂。

Barker-Coded波形

另一组重要的波形是相位编码波形,其中常用的有巴克码、弗兰克码和扎多夫-楚码。在相位编码波形中,一个脉冲被分为多个子脉冲,通常被称为芯片,每个芯片用给定的相位调制。所有的相位编码波形都具有良好的自相关特性,这使它们成为脉冲压缩的良好候选者。因此,如果采用相位编码波形,就可以降低拦截的可能性,因为能量被分散到芯片中。在接收端,配置合适的匹配滤波器可以抑制噪声,获得较好的距离分辨率。

巴克码可能是最著名的相位编码波形。可以使用以下命令构造巴克编码波形。

巴克波形=相控。PhaseCodedWaveform (“代码”“巴克”“NumChips”7...“SampleRate”fs,“ChipWidth”1 / bw,脉冲重复频率的脉冲重复频率)
巴克波形=相控。phasecodedwavewithproperties: SampleRate: 200000 Code: 'Barker' ChipWidth: 1.0000e-05 NumChips: 7 PRF: 10000 PRFSelectionInputPort: false FrequencyOffsetSource: 'Property' FrequencyOffset: 0 OutputFormat: ' pulse ' numpulse: 1 PRFOutputPort: false compresentsoutputport: false
Wav = barker波形();

这个巴克码由7个芯片组成。其模糊度函数的零多普勒切由

ambgfun (wav, barkerwaveform.SampleRate barkerwaveform.PRF,“切”“多普勒”);

图中包含一个axes对象。带有标题模糊函数的轴对象,0 kHz多普勒切割包含一个类型为线的对象。

从图中可以看出,巴克码的模糊函数的零多普勒切割有一个有趣的性质。它的所有副瓣高度相同,正好是主瓣的1/7。事实上,长度为N的巴克码可以提供N的峰对峰抑制,这有助于区分距离较近的目标。这是巴克代码最重要的特性。距离分辨率约为10微秒,与芯片宽度相同。

与巴克代码相关的有两个问题。首先,已知的巴克密码只有7个。它们的长度是2、3、4、5、7、11和13。人们相信没有其他的巴克码。其次,巴克码的多普勒性能相当差。虽然模糊函数在零多普勒切割处具有良好的形状,但一旦出现多普勒频移,副瓣电平会显著增加。增加可以在下面的等高线图中看到。

ambgfun (wav, barkerwaveform.SampleRate, barkerwaveform.PRF);

图中包含一个axes对象。带有标题歧义函数的axis对象包含一个类型为contour的对象。

总结

本例比较了几种常用的波形,包括矩形波形、线性调频波形、阶跃调频波形和巴克编码波形。它还展示了如何使用模糊函数来分析这些波形并确定它们的分辨能力。

参考

Nadav Levanon和Eli Mozeson,雷达信号,威利- ieee出版社,2004。

马克·理查兹,雷达信号处理基础“,麦格劳·希尔,2005年。