阵列信号处理中的导向矢量
假设一均匀线性阵列,有N个阵元组成,满足:远场、窄带假设。
假设信源发射信号,来波方向为
θ
\theta
θ,第一个阵元接收到的信号为
x
(
t
)
x(t)
x(t),则第
n
n
n个阵元接收的信号可以表示为
X
=
x
(
t
)
e
j
2
π
∗
(
n
−
1
)
d
s
i
n
θ
λ
X=x(t)e^{j2\pi*(n-1)\frac{dsin\theta}{\lambda}}
X=x(t)ej2π∗(n−1)λdsinθ,可以得到阵列对信号的响应,即导向矢量(steering vector):
a
(
θ
)
=
[
1
,
e
j
2
π
∗
d
s
i
n
θ
λ
,
e
j
2
π
∗
2
∗
d
s
i
n
θ
λ
,
.
.
.
,
e
j
2
π
∗
(
N
−
1
)
∗
d
s
i
n
θ
λ
]
T
a(\theta)=[1,e^{j2\pi*\frac{dsin\theta}{\lambda}},e^{j2\pi*2*\frac{dsin\theta}{\lambda}},...,e^{j2\pi*(N-1)*\frac{dsin\theta}{\lambda}}]^T
a(θ)=[1,ej2π∗λdsinθ,ej2π∗2∗λdsinθ,...,ej2π∗(N−1)∗λdsinθ]T
那么阵列输出为:
y
=
a
(
θ
)
x
(
t
)
y=a(\theta)x(t)
y=a(θ)x(t)
matlab中可以一行代码来实现:
% Input :
% * N: 阵元数
% * theta:来波方向
% * dLembda:阵元间距与波长的比值,通常为1/2
% Output :
% * aTheta:导向矢量,列向量
aTheta = exp(1i*2*pi*dLembda*[0:N-1]'*sin(theta/180*pi));
确知波束形成
确知波束形成就是通过对各阵元接收到的信号进行加权求和的方式,使的波束指向一个确定的方向,经过波束形成之后,阵列接收的信号就由一个矩阵变为了一个向量,此时只是一个信号。假设来波方向为
θ
\theta
θ,确知波束形成的权重,就是导向矢量的埃尔米特转置,即共轭转置:
W
=
a
(
θ
)
H
=
[
1
,
e
−
j
2
π
∗
d
s
i
n
θ
λ
,
e
−
j
2
π
∗
2
∗
d
s
i
n
θ
λ
,
.
.
.
,
e
−
j
2
π
∗
(
N
−
1
)
∗
d
s
i
n
θ
λ
]
W=a(\theta)^{H}=[1,e^{-j2\pi*\frac{dsin\theta}{\lambda}},e^{-j2\pi*2*\frac{dsin\theta}{\lambda}},...,e^{-j2\pi*(N-1)*\frac{dsin\theta}{\lambda}}]
W=a(θ)H=[1,e−j2π∗λdsinθ,e−j2π∗2∗λdsinθ,...,e−j2π∗(N−1)∗λdsinθ]
波束形成之后,输出信号为:
y
=
W
X
=
W
a
(
θ
)
x
(
t
)
y=WX=Wa(\theta)x(t)
y=WX=Wa(θ)x(t)
静态波束形成其实就是空间滤波,它对指定方向上的信号进行加强和选择性通过,而对其他方向的来波信号进行抑制,例如有一个信源发出信号为
x
1
(
t
)
x_1(t)
x1(t)的波达方向为
θ
1
=
1
0
∘
\theta_1=10^{\circ}
θ1=10∘,而波束指向
θ
2
=
2
0
∘
\theta_2=20^{\circ}
θ2=20∘,此时
导向矢量(steering vector):
a
(
θ
1
)
=
[
1
,
e
j
2
π
∗
d
s
i
n
θ
1
λ
,
e
j
2
π
∗
2
∗
d
s
i
n
θ
1
λ
,
.
.
.
,
e
j
2
π
∗
(
N
−
1
)
∗
d
s
i
n
θ
1
λ
]
T
a(\theta_1)=[1,e^{j2\pi*\frac{dsin\theta_1}{\lambda}},e^{j2\pi*2*\frac{dsin\theta_1}{\lambda}},...,e^{j2\pi*(N-1)*\frac{dsin\theta_1}{\lambda}}]^T
a(θ1)=[1,ej2π∗λdsinθ1,ej2π∗2∗λdsinθ1,...,ej2π∗(N−1)∗λdsinθ1]T
那么阵列输出为:
y
=
a
(
θ
1
)
x
1
(
t
)
y_=a(\theta_1)x_1(t)
y=a(θ1)x1(t)。
指向
2
0
∘
20^{\circ}
20∘确知波束对阵元的加权的权重为:
W
=
a
(
θ
2
)
H
=
[
1
,
e
−
j
2
π
∗
d
s
i
n
θ
2
λ
,
e
−
j
2
π
∗
2
∗
d
s
i
n
θ
2
λ
,
.
.
.
,
e
−
j
2
π
∗
(
N
−
1
)
∗
d
s
i
n
θ
2
λ
]
W=a(\theta_2)^{H}=[1,e^{-j2\pi*\frac{dsin\theta_2}{\lambda}},e^{-j2\pi*2*\frac{dsin\theta_2}{\lambda}},...,e^{-j2\pi*(N-1)*\frac{dsin\theta_2}{\lambda}}]
W=a(θ2)H=[1,e−j2π∗λdsinθ2,e−j2π∗2∗λdsinθ2,...,e−j2π∗(N−1)∗λdsinθ2]
波束形成之后,输出信号为:
y
=
W
X
=
W
a
(
θ
1
)
x
1
(
t
)
=
(
a
(
θ
2
)
)
T
a
(
θ
1
)
x
1
(
t
)
=
(
1
∗
1
+
e
j
∗
2
π
d
λ
(
s
i
n
θ
1
−
s
i
n
θ
2
)
+
e
j
∗
2
π
∗
2
∗
d
λ
(
s
i
n
θ
1
−
s
i
n
θ
2
)
+
.
.
.
+
e
j
∗
2
π
∗
(
N
−
1
)
∗
d
λ
(
s
i
n
θ
1
−
s
i
n
θ
2
)
)
x
1
(
t
)
y=WX=Wa(\theta_1)x_1(t)=(a(\theta_2))^Ta(\theta_1)x_1(t)=(1*1+e^{j*2\pi \frac{d}{\lambda}(sin\theta_1-sin\theta_2)}+e^{j*2\pi *2* \frac{d}{\lambda}(sin\theta_1-sin\theta_2)}+...+e^{j*2\pi *(N-1)* \frac{d}{\lambda}(sin\theta_1-sin\theta_2)})x_1(t)
y=WX=Wa(θ1)x1(t)=(a(θ2))Ta(θ1)x1(t)=(1∗1+ej∗2πλd(sinθ1−sinθ2)+ej∗2π∗2∗λd(sinθ1−sinθ2)+...+ej∗2π∗(N−1)∗λd(sinθ1−sinθ2))x1(t)
我们对其中的权重取绝对值进行分析,因为
θ
1
≠
θ
2
\theta_1 \neq \theta_2
θ1=θ2 ,所以每一项进行加权后的绝对值都小于1,而只有第一项等于1:
∣
e
j
∗
2
π
d
λ
∗
n
∗
(
s
i
n
θ
1
−
s
i
n
θ
2
)
∣
<
1
,
n
=
2
,
3
,
.
.
.
,
N
−
1
|e^{j*2\pi \frac{d}{\lambda}*n*(sin\theta_1-sin\theta_2)}|<1,n=2,3,...,N-1
∣ej∗2πλd∗n∗(sinθ1−sinθ2)∣<1,n=2,3,...,N−1
但是当波束指向方向与来波方向重合的时候,即
θ
1
=
θ
2
=
2
0
∘
\theta_1=\theta_2=20^{\circ}
θ1=θ2=20∘的时候
y
=
W
X
=
W
a
(
θ
1
)
x
1
(
t
)
=
(
a
(
θ
2
)
)
T
a
(
θ
1
)
x
1
(
t
)
=
(
1
+
1
+
.
.
.
+
1
)
x
1
(
t
)
=
N
x
1
(
t
)
y=WX=Wa(\theta_1)x_1(t)=(a(\theta_2))^Ta(\theta_1)x_1(t)=(1+1+...+1)x_1(t)=Nx_1(t)
y=WX=Wa(θ1)x1(t)=(a(θ2))Ta(θ1)x1(t)=(1+1+...+1)x1(t)=Nx1(t)
其中
N
N
N为阵元个数,即信号
x
1
(
t
)
x_1(t)
x1(t)被增强
N
N
N倍。
阵列方向图
我们可以通过仿真,绘制方向图,来直观展示阵列的空间滤波响应,方向图定义为阵列输入为平面波的时候,阵列输出(通常只是考虑输出幅度或者功率与平面波入射角的关系)。一维线阵在阵列基线上的幅度方向图为:
G
(
θ
)
=
∣
W
H
a
(
θ
)
∣
G(\theta)=|W^Ha(\theta)|
G(θ)=∣WHa(θ)∣
功率方向图为:
G
(
θ
)
=
∣
W
H
a
(
θ
)
∣
2
G(\theta)=|W^Ha(\theta)|^2
G(θ)=∣WHa(θ)∣2
不管是幅度方向图还是功率方向图,都和阵列的权矢量有关,在工程中,分贝形式的方向图更为普遍,幅度方向图和功率方向图的分贝形式分别为:
G
(
θ
)
=
10
l
g
∣
W
H
a
(
θ
)
∣
G(\theta)=10lg|W^Ha(\theta)|
G(θ)=10lg∣WHa(θ)∣
功率方向图为:
G
(
θ
)
=
20
l
g
∣
∣
W
H
a
(
θ
)
∣
2
G(\theta)=20lg||W^Ha(\theta)|^2
G(θ)=20lg∣∣WHa(θ)∣2
阵列方向图仿真
下面采用matlab仿真,绘制方向图,编写的方向图自定义函数
function Gtheta = DBF(elementNum,observaTheta,pointTheta,dLmbda,plotEnableHigh)
% 该函数用于产生方向图
% Author:huasir 2023.9.24 @Beijing
% Input :
% * elementNum: 阵元数
% * observaTheta:观测角度范围,例如[-90:0.1:90]
% * theta:来波方向
% * dLembda:阵元间距与波长的比值,通常为1/2
% Output :
% * GTheta:方向图
N = elementNum; %阵元数
theta = observaTheta; %观测角度范围
theta0 = pointTheta; %波形形成的方向
theta0 = theta0*pi/180;
theta = theta*pi/180;
d_lembda = dLmbda; %阵元间距比波长
a = exp(j*2*pi*d_lembda*(0:N-1)'*sin(theta)); %导向矢量
w = exp(j*2*pi*d_lembda*(0:N-1)'*sin(theta0)); %加权权向量
y = abs(w'*a);
%win = taylorwin(N); % 泰勒窗
%win = chebwin(N,30); %切比雪夫窗,抑制旁瓣
% ww = w.*win; %加窗操作
% y1 = abs(ww'*a); %加窗后的方向图
if plotEnableHigh == 1
figure;
%plot(theta*180/pi,20*log10(y/max(y)),'--',theta*180/pi,20*log10(y1/max(y1)),'-');
plot(theta*180/pi,20*log10(y/max(y)),'linewidth',1);
xlabel('方位角/°');ylabel('归一化功率方向图/dB');
axis tight;% axistight 使得图形框图靠近数据
grid on; %添加栅格线
ylim([-40, 0]); % 为了限制y值范围,使得图像显示的更加合理
title(sprintf('阵元数:%d,波束方向:%.0f°',N,pointTheta))
end
Gtheta = y; %返回方向图
end
在主函数中进行调用,主要参数如下:
参数 | Value |
---|---|
阵元 | 8 |
波束方向 | 10° |
阵元间距 | 1 / 2 λ 1/2\lambda 1/2λ |
主函数中进行调用:
close all; clear all; clc;
Gtheta = DBF(8,(-90:0.1:90),10,1/2,1);
绘制的方向图如下: