主要内容

基于广义互相关的信源定位

此示例显示如何使用广义互相关(GCC)和三角测量确定宽带信号源的位置。为简单起见,本示例仅限于由一个源和两个接收传感器阵列组成的二维场景。您可以将此方法扩展到两个以上的传感器或传感器阵列以及三维。

介绍

源定位不同于波达方向(DOA)估计。DOA估计仅寻求确定传感器源的方向。源定位确定其位置。在本例中,源定位包括两个步骤,第一个步骤是DOA估计。

  1. 使用DOA估计算法从每个传感器阵列估计源的方向。对于宽带信号,许多著名的到达方向估计算法(如Capon方法或MUSIC)无法应用,因为它们使用元素之间的相位差,使其仅适用于窄带信号。在宽带信号中在第二种情况下,您可以使用元素之间的信号到达时间差来代替相位信息带相位变换的广义互相关(GCC-PHAT)算法。根据到达时间的差异,您可以计算DOA。(关于窄带DOA估计算法的另一个示例,请参见高分辨率波达方向估计).

  2. 通过三角测量计算震源位置。首先,从阵列沿到达方向绘制直线。然后,计算这两条直线的交点。这就是震源位置。震源定位需要了解接收传感器或传感器阵列的位置和方向。

三角剖分公式

三角剖分算法基于简单的三角公式。假设传感器阵列位于二维坐标系(0,0)(L,0)未知源位置为(x,y). 根据传感器阵列位置和到达阵列的两个方向的知识, θ 1. θ 2. ,您可以计算(x,y)坐标来自

L = Y 棕褐色的 θ 1. + Y 棕褐色的 θ 2.

你可以解决这个问题Y

Y = L / ( 棕褐色的 θ 1. + 棕褐色的 θ 2. )

然后x

x = Y 棕褐色的 θ 1.

本示例的其余部分显示了如何使用相控阵系统工具箱的函数和系统对象™ 计算震源位置。

源和传感器几何结构

设置两个接收4元素ULA,沿x-全球坐标系的轴,间距为50米。第一个阵列的相位中心为(0,0,0).第二个阵列的相位中心为(50,0,0). 该来源位于(30,100)如图所示,接收阵列在+y方向。源在-y方向

指定传感器阵列之间的基线。

L=50;

创建一个由全向话筒组成的4元件接收器。你可以用同样的方法阶段性系统对象™ 对于相控宽带采集器相控GCC激励器两个数组的系统对象。

N=4;rxULA=相控。ULA(“元素”,相控。全方位话筒元件,...“NumElements”,N);

指定第一个传感器阵列的位置和方向。创建ULA时,阵列元素将自动沿Y-轴心国。必须将阵列的局部轴旋转90°,才能沿阵列对齐图元x-全局坐标系的轴。

rxpos1=[0;0;0];rxvel1=[0;0;0];rxax1=azelaxes(90,0);

指定第二个传感器阵列的位置和方向。选择第二个阵列的局部轴以与第一个阵列的局部轴对齐。

rxpos2=[L;0;0];rxvel2=[0;0;0];rxax2=rxax1;

将信号源指定为单个全向传感器。

srcpos=[30;100;0];srcvel=[0;0;0];srcax=azelaxes(-90,0);srcULA=相控全方位话筒元件;

定义波形

选择宽带LFM波形作为源信号。假设系统的工作频率为300 kHz,并将信号带宽设置为100 kHz。假设最大工作范围为150 m。然后,您可以设置脉冲重复间隔(PRI)和脉冲重复频率(PRF)。假设占空比为10%,并设置脉冲宽度。最后,在1500米/秒的水下通道中使用声速。

设置LFM波形参数并创建分阶段的。线性的系统对象™.

fc=300e3;%300千赫c=1500;%1500米/秒dmax=150;%150米pri=(2*dmax)/c;prf=1/pri;bw=100.0e3;%100千赫fs=2*bw;波形=相控.LinearFMWaveform(“采样器”,财政司司长,“扫频带宽”,bw,...“PRF”,prf,“脉冲宽度”,pri/10);

然后,发送信号可以如下生成:

信号=波形();

辐射、传播和收集信号

宽带系统的辐射和传播建模比窄带系统的建模更为复杂。例如,衰减取决于频率。多普勒频移以及由于信号入射方向引起的元素之间的相移也随频率而变化。因此,在n处理宽带信号。此示例使用子带方法。

将子频带数设置为128。

nfft=128;

指定源散热器和传感器阵列采集器。

散热器=相控宽带散热器(“传感器”,srcULA,...“传播速度”C“采样器”,财政司司长,...“载波频率”,fc,“NumSubbands”,nfft);采集器1=相控宽带采集器(“传感器”,rxULA,...“传播速度”C“采样器”,财政司司长,...“载波频率”,fc,“NumSubbands”,nfft);收集器2=相控宽带收集器(“传感器”,rxULA,...“传播速度”C“采样器”,财政司司长,...“载波频率”,fc,“NumSubbands”,nfft);

为从源到两个传感器阵列的路径创建宽带信号传播器。

信道1=相控宽带自由空间(“传播速度”C...“采样器”,财政司司长,“工作频率”,fc,“NumSubbands”,nfft);信道2=相控宽带自由空间(“传播速度”C...“采样器”,财政司司长,“工作频率”,fc,“NumSubbands”,nfft);

确定从源到传感器阵列的传播方向。传播方向与源的局部坐标系有关。

[~,ang1t]=范围角(rxpos1,srcpos,srmax);[~,ang2t]=范围角(rxpos2,srcpos,srcax);

沿传感器阵列的方向从源辐射信号。

sigt=散热器(信号[ang1t ang2t]);

然后,将信号传播到传感器阵列。

sigp1=channel1(sigt(:,1),srcpos,rxpos1,srcvel,rxvel1);sigp2=channel2(sigt(:,2),srcpos,rxpos2,srcvel,rxvel2);

计算传感器阵列上传播信号的到达方向。由于收集器响应是传感器阵列局部坐标系中到达方向的函数,因此将局部坐标轴矩阵传递给射程角作用

[~,ang1r]=范围角(srcpos,rxpos1,rxax1);[~,ang2r]=范围角(srcpos,rxpos2,rxax2);

在接收传感器阵列上收集信号。

sigr1=采集器1(sigp1,ang1r);sigr2=收集器2(sigp2,ang2r);

GCC估计与三角剖分

创建GCC-PHAT估算器。

doa1=相控.gcc激励器(“传感器阵列”,rxULA,“采样器”,财政司司长,...“传播速度”(c);doa2=相控.gcc激励器(“传感器阵列”,rxULA,“采样器”,财政司司长,...“传播速度”(c);

估计到达的方向。

angest1=doa1(sigr1);angest2=doa2(sigr2);

使用之前建立的公式对震源位置进行三角测量。因为场景仅限于x-y平面,将z坐标设置为零。

yest=L/(绝对值(tand(angest1))+绝对值(tand(angest2));xest=yest*abs(tand(angest1));热情=0;srcpos_est=[xest;yest;zest]
srcpos_est=3×129.9881 100.5743 0

估计的震源位置与真实位置相匹配,在30厘米以内。

总结

此示例演示了如何使用三角剖分执行源定位。特别是,该示例演示了如何模拟、传播和处理宽带信号。GCC-PHAT算法用于估计宽带信号的到达方向。