高分辨率的到达方向估计

本实施例说明的到达(DOA)估计技术几个高分辨率方向。它引入了变体的MUSIC,根-MUSIC,ESPRIT和根-WSF算法和讨论了在远场的上下文中它们各自的优点,由窄带的均匀线性阵列(ULA)天线接收到的信号源。

建模接收阵列信号

定义一个由10个各向同性天线组成的均匀线性阵列(ULA)。数组元素间距为0.5米。

N = 10;齿龈= phased.ULA (“NumElements”N'ElementSpacing',0.5)
齿龈=分阶段。ULA与属性:元素:[1x1阶段。[1] [2] [3] [4] [4] [4] [4] [4] [4] [4] [4

模拟两个事件信号的阵列输出。这两个信号都是从90°的方位角入射的。它们的仰角分别为73°和68°。在这个例子中,我们假设这两个方向是未知的,需要估计。模拟从工作频率为300mhz的解调阵列上接收到的基带信号。

FC = 300e6;% 工作频率fs = 8192;%采样频率λ= physconst (“光速”)/ fc;%的波长pos = getElementPosition (ula)”/λ;元素在波长中的位置ang1 = (90; 73);ang2 = (90; 68);的信号的方向%angs = [ang1 ang2];Nsamp = 1024;快照的数量%noisePwr = 0.01;%噪声功率RS = RNG(2012);设置随机数生成器信号= sensorsig(POS,Nsamp,angs,noisePwr);

由于ULA是围绕其轴对称的,DOA算法不能唯一地确定方位和仰角。因此,这些高分辨率DOA估计器返回的结果是宽边角的形式。在下图中可以找到一个侧面角的示意图。

计算这两个入射角对应的侧向角。

ang_true = az2broadside (ang(: 1)和(2:))
ang_true =1×217.0000 - 22.0000

宽边角度是17°和22°。

估计到达方向(DOA)

假设我们预先知道有两个来源。要估计DOA,可以使用root-MUSIC技术。使用root-MUSIC算法构造DOA估计器。

rootmusicangle = phased.RootMUSICEstimator (“SensorArray”、齿龈...'工作频率',FC,...“NumSignalsSource”,“属性”,“NumSignals”,2)
rootmusicangle =分阶段。属性:SensorArray: [1x1阶段性。来源:‘Property’NumSignals: 2正向-反向-平均:false spatial: 0

由于ULA的阵列响应向量是共轭对称的,我们可以使用前向-后向(FB)平均来执行与真实矩阵的计算,从而降低计算复杂度。基于模糊神经网络的估计量也有较低的方差,减少了信号间的相关性。

要应用前向-后向平均,将root-MUSIC DOA估计器的前向-后向平均属性设置为true。在这种情况下,root-MUSIC算法也称为幺正root-MUSIC算法。

rootmusicangle.ForwardBackwardAveraging = TRUE;

执行DOA估计:

ang = rootmusicangle(信号)
和=1×216.9960 21.9964

我们还可以使用ESPRIT方位估计。作为根-MUSIC的情况下,ForwardBackwardAveraging属性设置为true。该算法也被称为酉ESPRIT。

espritangle = phased.ESPRITEstimator (“SensorArray”、齿龈...'工作频率',FC,“ForwardBackwardAveraging”,真的,...“NumSignalsSource”,“属性”,“NumSignals”,2)
espritangle =分阶段。ESPRITEstimator与属性:传感器阵列:[1x1阶段。来源:属性:数字信号:2空间平滑:0方法:‘TLS’前向后向平均:真正的行加权:1
ang = espritangle(信号)
和=1×221.9988 - 16.9748

最后,使用MUSIC DOA估计器。音乐也支持前后平均。万博1manbetx与ESPRIT和root-MUSIC不同,MUSIC计算指定的侧向扫描角度的空间频谱。到达的方向与音乐空间谱中的峰值相对应。

musicangle = phased.MUSICEstimator(“SensorArray”、齿龈...'工作频率',FC,“ForwardBackwardAveraging”,真的,...“NumSignalsSource”,“属性”,“NumSignals”2,...'DOAOutputPort',真正的)
musicangle =分阶段。带有属性的MUSICEstimator: SensorArray: [1x1相控阵]。运算频率:300000000向前向后平均:真空间平滑:0扫描角度:[1x181双]DOAOutputPort:真数字信号:2数字信号来源:'Property'
[〜,ANG] = musicangle(信号)
和=1×217日22
plotSpectrum (musicangle)

到达音乐的方向仅限于扫描角度ScanAngles属性。因为在此示例重合到来的真实方向与搜索角在ScanAngles,音乐提供精确的DOA角度估计。在实践中,根音乐比音乐提供了更好的分辨率。然而,MUSIC算法也可以用于方位和仰角的DOA估计使用2-D阵列。看到到达估计与Beamscan,MVDR和音乐的方向

估计信号源的数目

在实践中,你一般不知道信号源的数量,并且需要从接收信号估计源的数量。您可以通过指定“自动”的NumSignalsSource财产,要么选择“AIC”或“MDL”为NumSignalsMethod财产估计信号源的数量。对于AIC,Akaike信息准则(AIC)被使用,并且用于MDL,所述最小描述长度被使用(MDL)标准。

在设置NumSignalsSource之前,必须先释放DOA对象,因为它是被锁定的,以便在处理期间提高效率。

释放(espritangle);espritangle.NumSignalsSource =“汽车”;espritangle.NumSignalsMethod =“另类投资会议”;ang = espritangle(信号)
和=1×221.9988 - 16.9748

降低计算复杂度

除了前向-后向平均之外,其他方法还可以降低计算复杂度。其中一种方法是在波束空间中求解维数减少的等价问题。在我们的例子中,ESPRIT算法执行一个10x10实矩阵的特征值分解(EVD),而beamspace版本可以将问题简化为一个3x3实矩阵的EVD。该技术利用信号所在扇区的先验知识来定位波束风扇的中心。在本例中,将波束风扇指向20°方位角。

bsespritangle = phased.BeamspaceESPRITEstimator (“SensorArray”、齿龈...'工作频率',FC,...'NumBeamsSource',“属性”,“NumBeams”,3,...“BeamFanCenter”,20);ANG = bsespritangle(信号)
和=1×221.9875 - 16.9943

另一种技术是根加权子空间拟合(WSF)算法。该算法是迭代的,在计算复杂度方面要求最高。您可以通过指定MaximumIterationCount属性来设置迭代的最大次数,以将成本保持在特定的限制之下。

rootwsfangle = phased.RootWSFEstimator (“SensorArray”、齿龈...'工作频率',FC,“MaximumIterationCount”,2);ang = rootwsfangle(信号)
和=1×216.9961 - 21.9962

优化性能

除了FB平均之外,您还可以使用行加权来改进元素空间ESPRIT估计器的统计性能。行权是一种将不同的权值应用于信号子空间矩阵的行上的技术。行权参数确定最大权值。在大多数情况下,它被选择为尽可能大。但是,它的值不能大于(N-1)/2,其中N是数组的元素数。

释放(espritangle);espritangle。RowWeighting = 4
espritangle =分阶段。ESPRITEstimator与属性:传感器阵列:[1x1阶段。[ULA]传播速度:299792458操作频率:300000000 NumSignalsSource: 'Auto' NumSignalsMethod: 'AIC' spatial al: 0 Method: 'TLS' forwardbackward: true row加权:4
ang = espritangle(信号)
和=1×221.9884 - 17.0003

在多径环境中估计相干源

如果多个源是相关或相干的(如在多径环境中),那么空间协方差矩阵就会出现秩亏,而基于子空间的DOA估计方法可能会失败。为了说明这一点,对一个由4个窄带分量组成的接收信号进行建模。假设前3个信号中有2个是第一个源的多路径反射,其大小分别等于第一个源的1/4和1/2。

scov =眼(4);magratio = (1; 0.25, 0.5);scov (1:3, 1:3) = magratio * magratio ';

所有信号在0°仰角入射,方位角入射角度分别为-23°、0°、12°和40°。

%事变方位az_ang = [-23 0 12 40];当仰角为零时,[- 9090]内的方位角等于横倾角。el_ang = 0 (1、4);%接收信号信号= sensorsig(POS,Nsamp,[az_ang; el_ang],noisePwr,scov);RNG(RS);%恢复随机数发生器

当源是一致比较DOA算法的性能。为了简化该示例中,每运行算法只有一个试验。由于高信噪比,其结果将是估计精度的一个很好的指标。

首先,验证AIC准则低估了源的数量,导致unitary ESPRIT算法给出了错误的估计。AIC估计的来源数量为2,因为3个来源是相关的。

释放(espritangle);espritangle.NumSignalsSource =“汽车”;espritangle.NumSignalsMethod =“另类投资会议”;ang = espritangle(信号)
和=1×2-15.3535 - 40.0024

根-WSF算法是在相关的信号的情况下的鲁棒性。具有正确数量的源作为输入,该算法正确地估计到达方向。

释放(rootwsfangle);rootwsfangle。NumSignalsSource =“属性”;rootwsfangle。NumSignals = 4;ang = rootwsfangle(信号)
和=1×440.0016 -22.9919 12.0693 0.0737

ESPRIT,根MUSIC和音乐,但不能估计到达正确的方向,即使我们指定的源的数量,并使用统一的实现。

释放(rootmusicangle);rootmusicangle。NumSignalsSource =“属性”;rootmusicangle。NumSignals = 4;rootmusicangle.ForwardBackwardAveraging = TRUE;ang = rootmusicangle(信号)
和=1×440.0077 -22.8313 4.4976 -11.9038

可以应用空间平滑来估计相关信号的DOAs。然而,使用空间平滑会降低阵列的有效孔径。因此,由于子数组比原数组小,估计量的方差增大。

释放(rootmusicangle);Nr = 2;多径反射的数量%rootmusicangle.SpatialSmoothing = NR
rootmusicangle =分阶段。属性:SensorArray: [1x1阶段性。1 .运算频率:300000000数字信号来源:“属性”数字信号:4向前向后平均:真正的空间平滑:2
ang = rootmusicangle(信号)
和=1×440.0010 -22.9959 12.1376 0.1843

DOA算法的比较

综上所述,ESPRIT,MUSIC,根-MUSIC和根-WSF是提供Ulas公寓良好的性能,合理的计算复杂性的重要DOA算法。酉ESPRIT,酉根-MUSIC和波束域ESPRIT统一提供的方式来显著减少估计的计算成本,同时还可以提高它们的性能。根-WSF是在相关源,因为,这违背了其他方法的上下文中特别有吸引力的,它不要求空间平滑来适当地估计到达角时是已知的源的数目。