文档

分阶段。音乐Estimator2D

利用窄带MUSIC算法估计二维到达方向

描述

分阶段。音乐Estimator2D系统对象™实现窄带多信号分类(音乐)算法用于二维平面阵列或三维阵列,如统一矩形阵列(URA)。MUSIC是一种高分辨率测向算法,能够分辨距离很近的信号源。该算法基于传感器协方差矩阵的特征空间分解。

估计到达方向:

  1. 定义并建立一个分阶段。音乐Estimator2D系统对象。看到建设

  2. 调用一步方法,根据其性质,估计DOAs分阶段。音乐Estimator2D

请注意

而不是使用一步方法执行System对象定义的操作时,可以使用参数调用对象,就像调用函数一样。例如,y =步骤(obj, x)y = obj (x)执行相同操作。

建设

估计量=分阶段。音乐Estimator2D创建MUSIC DOA估计器系统对象,估计量

估计量=分阶段。音乐Estimator2D(的名字价值创建一个System对象,估计量,将每个指定的属性Name设置为指定的值。可以以任意顺序指定其他名称-值对参数,如(Name1Value1、……).

属性

全部展开

传感器阵列,指定为相控阵系统工具箱阵列系统对象。

例子:分阶段。URA所言

信号传播速度,指定为实值正标量。单位是米每秒。的返回值是缺省的传播速度physconst(“光速”)

例子:3 e8

数据类型:|

工作频率,指定为正标量。单位为Hz。

例子:1 e9

数据类型:|

启用前向后平均,指定为真正的.将此属性设置为真正的利用前向后向平均法估计具有共轭对称流形的传感器阵列的协方差矩阵。

数据类型:逻辑

方位角扫描角度,指定为实值行向量。角的单位是度。角度值必须在-180°到180°之间,并按升序排列。

例子:(起誓)

数据类型:|

仰角扫描角度,指定为实值行向量。角的单位是度。角度值必须在-90°和90°之间,并按升序排列。

例子:(70:75)

数据类型:|

选项来启用到达方向(DOA)输出,指定为真正的.若要获取信号的DOA,请将此属性设置为真正的.在执行对象时,DOAs在第二个输出参数中返回。

数据类型:逻辑

到达信号数的来源,指定为“汽车”“属性”

  • “汽车”—System对象使用中指定的方法估计到达的信号数NumSignalsMethod财产。

  • “属性”—指定到达的信号数NumSignals财产。

数据类型:字符

用来估计到达信号的数量的方法,指定为“另类投资会议”“MDL”

  • “另类投资会议”-赤池信息准则

  • “MDL”-最小描述长度标准

依赖关系

若要启用此属性,请设置NumSignalsSource“汽车”

数据类型:字符

DOA估计的到达信号数,指定为正整数。

例子:3.

依赖关系

若要启用此属性,请设置NumSignalsSource“属性”

数据类型:|

方法

plotSpectrum 绘制2-D音乐频谱
重置 复位状态系统对象
一步 使用2d MUSIC估计到达方向
所有系统对象都是通用的
释放

允许系统对象属性值改变

例子

全部展开

假设两个频率为450hz和600hz的正弦波从两个不同的方向撞击URA。信号从-37°方位角,0°仰角和17°方位角,20°仰角到达。使用二维MUSIC估计两个信号的到达方向。阵列工作频率为150 MHz,信号采样频率为8 kHz。

f1 = 450.0;f2 = 600.0;doa1 = [0] -37;;doa2 = (17; 20);fc = 150 e6;c = physconst (“光速”);林= c / fc;fs = 8000;

创建具有默认各向同性元素的URA。设置元件的频率响应范围。

数组=分阶段。(精“大小”, 11 [11],“ElementSpacing”,林/ 2林/ 2);array.Element.FrequencyRange = [50.0e6 500.0e6];

创建两个信号并添加随机噪声。

t = (0:1 / fs: 1)。';x1 = cos(2 *π* t * f1);x2 = cos(2 *π* t * f2);x = collectPlaneWave(array,[x1 x2],[doa1,doa2],fc);噪音= 0.1 * (randn(大小(x)) + 1我* randn(大小(x)));

创建并执行2-D MUSIC估计器,以找到到达方向。

估计量=分阶段。MUSICEstimator2D (“SensorArray”数组,...“OperatingFrequency”足球俱乐部,...“NumSignalsSource”“属性”...“DOAOutputPort”,真的,“NumSignals”2,...“AzimuthScanAngles”-50: .5:50,...“ElevationScanAngles”-30: .5:30);[~,doas] =估计量(x +噪声)
doas =2×2-37 17 0 20

估计的DOAs与真实的DOAs完全匹配。

绘制二维空间频谱

plotSpectrum(估计);

假设两种频率为1.6 kHz和1.8 kHz的正弦波从两个不同的方向冲击磁盘阵列。圆盘元素之间的间距是1/2波长。信号从-31°方位角,-11°仰角和35°方位角,55°仰角到达。使用二维MUSIC估计两个信号的到达方向。阵列工作频率为300mhz,信号采样频率为8khz。

注意:此示例仅在R2016b或更高版本中运行。如果您正在使用较早的版本,请将对该函数的每个调用替换为等价的一步语法。例如,替换myObject (x)步骤(myObject x)

f1 = 1.6 e3;f2 = 1.8 e3;doa1 = (-31; -11);doa2 = [35; 55];fc = 300 e6;c = physconst (“光速”);林= c / fc;fs = 8.0 e3;

创建一个带有默认各向同性元素的共形数组。首先,建立一个市建局,以获取元素的位置。

uraarray =分阶段。(精“大小”(21日21),“ElementSpacing”,林/ 2林/ 2);pos = getElementPosition (uraarray);

提取它们的一个子集以形成一个内接磁盘。

半径= 10.5 *林/ 2;Pos (:,sum(Pos .^2) > radius^2) = [];

然后,使用这些位置创建共形数组。

confarray =分阶段。ConformalArray (“ElementPosition”、pos);viewArray (confarray)

设置元件的频率响应范围。

conarray . element . frequencyrange = [50.0e6 600.0e6];

创建两个信号并添加随机噪声。

t = (0:1 / fs: 1.5)。';x1 = cos(2 *π* t * f1);x2 = cos(2 *π* t * f2);x = collectPlaneWave(conarray,[x1 x2],[doa1,doa2],fc);噪音= 0.1*(randn(size(x)) + 1i*randn(size(x))));

创建并执行2-D MUSIC估计器,以找到到达方向。

估计量=分阶段。MUSICEstimator2D (“SensorArray”confarray,...“OperatingFrequency”足球俱乐部,...“NumSignalsSource”“属性”...“DOAOutputPort”,真的,“NumSignals”2,...“AzimuthScanAngles”-60: .1:60,...“ElevationScanAngles”-60: .1:60);[~,doas] =估计量(x +噪声)
doas =2×235 -31 55 -11

估计的DOAs与真实的DOAs完全匹配。

绘制二维空间频谱

plotSpectrum(估计);

算法

全部展开

参考文献

Van Trees, H. L.,最优阵列处理.纽约:Wiley-Interscience, 2002。

扩展功能

介绍了R2016b