【雷达原理】数字波束形成(DBF)

一、数字波束形成

数字波束形成(Digital Beam Forming,DBF) 技术,是针对阵列天线,利用阵列天线的孔径,通过数字信号处理在期望的方向形成接收波束。
DBF的物理意义:虽然单个天线的方向图是全向的,但对阵列多个接收通道的信号,利用数字处理方法,对某一方向的入射信号,补偿由于传感器在空间位置不同而引起的传播波程差导致的相位差,实现同相叠加,从而实现该方向的最大能量接收,完成该方向上的波束形成,来接收有用的期望信号,这种把阵列接收的方向增益聚集在一个指定的方向上,相当于形成了一个“波束”。
可以通过改变权值,使得波束指向不同的方向,并实现波束的扫描。通过多通道的并行处理也可以同时形成多个波束,还可以选择合适的窗函数来降低副瓣电平。

1.1 DBF原理

对于 N N N 个间距为 d d d 的阵元组成的接收阵列,考虑 p p p 个远场的窄带信号入射到该阵列上,假设阵元数和通道数相等,即各阵元接收到信号后经过各自的传输信道送到信号处理器,则接收信号矢量可表示为:
X ( t ) = A ⋅ S ( t ) + N ( t ) ( 1 − 1 ) X(t)=A·S(t)+N(t) (1-1) X(t)=AS(t)+N(t)11
其中, X ( t ) = [ x 1 ( t ) , x 2 ( t ) , . . . . . . , x N ( t ) ] T X(t)=[x_{1}(t),x_{2}(t),......,x_{N}(t)]^T X(t)=[x1(t),x2(t),......,xN(t)]T ,为 N × 1 N×1 N×1 维阵列接收快拍信号矢量,; S ( t ) = [ s 1 ( t ) , s 2 ( t ) , . . . . . . , s p ( t ) ] T S(t)=[s_{1}(t),s_{2}(t),......,s_{p}(t)]^T S(t)=[s1(t),s2(t),......,sp(t)]T ,为 p × 1 p×1 p×1 维信号矢量; N ( t ) N(t) N(t) N × 1 N×1 N×1 维噪声信号矢量; A = [ a ( θ 1 ) , a ( θ 2 ) , . . . . . . , a ( θ p ) ] A=[a(θ_{1}),a(θ_{2}),......,a(θ_{p})] A=[a(θ1),a(θ2),......,a(θp)] N × p N×p N×p 维导向矢量矩阵。

i i i 个信号的导向矢量为:
a ( θ i ) = [ 1 , e j 2 π d s i n θ i / λ , . . . , e j 2 π ( N − 1 ) d s i n θ i / λ ] T a(θ_{i})=[1,e^{j2πdsinθ_{i}/λ},...,e^{j2π(N-1)dsinθ_{i}/λ}]^T a(θi)=[1,ej2πdsinθi/λ,...,ej2π(N1)dsinθi/λ]T
在DBF过程中,假设信号的到达方向为 θ θ θ ,则在该方向的导向矢量为:
a ( θ ) = [ 1 , e j 2 π d s i n θ / λ , . . . , e j 2 π ( N − 1 ) d s i n θ / λ ] T a(θ)=[1,e^{j2πdsinθ/λ},...,e^{j2π(N-1)dsinθ/λ}]^T a(θ)=[1,ej2πdsinθ/λ,...,ej2π(N1)dsinθ/λ]T
由式(1-1)知,对于单一信号源,有 X ( t ) = A ⋅ S ( t ) + N ( t ) X(t)=A·S(t)+N(t) X(t)=AS(t)+N(t),波束形成技术与时间滤波类似,即对采样数据 X ( t ) X(t) X(t) 进行加权求和,加权后的输出信号为:
y ( t ) = W H ⋅ X ( t ) = W H ⋅ a ( θ ) ⋅ s ( t ) + W H ⋅ N ( t ) ( 1 − 2 ) y(t)=W^{H}·X(t)=W^{H}·a(θ)·s(t)+W^{H}·N(t) (1-2) y(t)=WHX(t)=WHa(θ)s(t)+WHN(t)12
式中, W = [ W 1 , W 2 , , . . . , W N ] T W=[W_{1},W_{2},,...,W_{N}]^T W=[W1,W2,,...,WN]T ,为DBF的权矢量。

W = a ( θ 0 ) W=a(θ_{0}) W=a(θ0) ,即对方向为 θ 0 θ_{0} θ0 的信号进行同相相加时,输出 y ( t ) y(t) y(t) 的模值最大。该过程就是利用了波束形成技术实现对方向为 θ 0 θ_{0} θ0 的选择,即空域滤波

等距线阵空域滤波的结构如图1所示,
图1 等距线阵空域滤波结构图
图1 等距线阵空域滤波结构图
对一个阵元数 N = 16 N=16 N=16 等距线阵,阵元间距为半波长,假设波束指向分别为-30°,0°,30°,经过DBF处理后,在指定的方向形成主瓣,其余方向形成旁瓣,数字波束形成方向图如图2所示。
在这里插入图片描述
在这里插入图片描述
图2 数字波束形成方向图
由图2可看出,未加窗时,阵列的波束形成方向图的副瓣电平为-13.15dB,采用对权矢量进行加窗处理,可以降低副瓣电平,例如加泰勒窗后,副瓣电平降低为-30.06dB,但其主瓣的3dB宽度为8.2°,相比未加窗处理的主瓣展宽了1.8°。

接收天线的阵元数不同,数字波束形成方向图也有较大区别,以波束指向为0°,未加窗处理为例,取阵元数分别为 N = 8 、 N = 16 、 N = 32 N=8、N=16、N=32 N=8N=16N=32 时,得到数字波束形成方向图如图3所示。
在这里插入图片描述
由图3可以看出,当阵元数成倍数增加时,其方向图的3dB宽度成倍数减小;旁瓣数量会随着阵元数的增加而增加;副瓣电平均相同。

1.2 工程应用实现方式

1.2.1 预先存储权矢量

采用公式(1-2)进行DBF处理需要 N 2 N^2 N2 次复数乘法运算,当波束扫描的角度间隔较小,即波位数量较多时,计算量是极大的,不利于实时计算。
因此实际工程应用时,要设置合理的波束扫描间隔,并充分挖掘硬件的性能(并行计算),可以通过提前计算出权矢量的数值,预先存储在文件中,在使用时进行导入即可计算。

1.2.2 利用DFT/FFT实现DBF

在不同的方向进行DBF处理时需要采用不同的权矢量,对方向 θ θ θ 的权矢量为:
W ( θ ) = [ 1 , e − j 2 π d s i n θ / λ , . . . , e − j 2 π d s i n θ ( N − 1 ) / λ ] T ( 1 − 3 ) W(θ)=[1,e^{-j2πdsinθ/λ},...,e^{-j2πdsinθ(N-1)/λ}]^T(1-3) W(θ)=[1,ej2πdsinθ/λ,...,ej2πdsinθ(N1)/λ]T13
将DBF处理搜索的波位的角度按下式进行量化:
s i n θ k = λ k N d , k = 0 , 1 , . . . , N − 1 ( 1 − 4 ) sinθ_{k}=\frac{λk}{Nd},k=0,1,...,N-1(1-4) sinθk=Ndλkk=0,1,...,N114
则得到的权矢量为 W ( θ k ) W(θ_{k}) W(θk)
W ( θ k ) = [ 1 , e − j 2 π N k , . . . , e − j 2 π N ( N − 1 ) k ] T ( 1 − 3 ) W(θ_{k})=[1,e^{-j\frac{2π}{N}k},...,e^{-j\frac{2π}{N}(N-1)k}]^T(1-3) W(θk)=[1,ejN2πk,...,ejN2π(N1)k]T13
由式(1-3)可知,DBF的权矢量 W ( θ k ) W(θ_{k}) W(θk) 为离散傅里叶变换(DFT)的旋转因子 W N n k W_{N}^{nk} WNnk ,因此可以利用DFT或者FFT实现DBF处理,同时得到N个波位的DBF结果。

采用快速傅里叶变换(FFT)可以减少DFT的计算时间复杂度,其复数乘法的运算次数为 ( N / 2 ) l o g N (N/2)logN (N/2)logN

案例:
设有32个阵元组成间距为半波长的等距线阵,同一距离单元的两个目标的方位角分别为-20°和30°,对接收信号利用128点FFT进行DBF处理,得到的结果如下:
在这里插入图片描述
x坐标代表角度维,每个点的角度精度为Ag_point =0.8952,仿真计算得到的目标角度为:A1=-Ag_point *(23-1)=-19.6954°,A2=Ag_point *(128-97) =27.75°。与实际设定角度存在一定范围的差异,由角度分辨率有关。

二、DBF应用

2.1 通道间相干积累

2.2 测量目标角度

三、MATLAB代码

1.DBF方向图

clc;
clear;
close all;

%% DBF方向图
N = 16;
d_lambda = 0.5;
theta = (-90:0.1:90);

% 1、不同波束指向
theta0 = -30;
pattern = Antenna_Pattern(N,d_lambda,theta0,theta);
figure;
plot(theta,20*log10(pattern/max(pattern)),'b-');
hold on;

theta0 = 0;
pattern = Antenna_Pattern(N,d_lambda,theta0,theta);
plot(theta,20*log10(pattern/max(pattern)),'r-.');
theta0 = 30;
pattern = Antenna_Pattern(N,d_lambda,theta0,theta);
plot(theta,20*log10(pattern/max(pattern)),'m--');
xlabel('方位/°');ylabel('归一化方向图/dB');xlim([-90 90]);ylim([-50 0]);
legend('\theta=-30','\theta=0','\theta=30');
title(['阵元数N=',num2str(N)]);

% 2、固定波束指向时,对比加窗前后效果
theta0 = 0;
pattern = Antenna_Pattern(N,d_lambda,theta0,theta);
figure;
plot(theta,20*log10(pattern/max(pattern)),'b-');
hold on;

select = 3;
pattern = Antenna_Pattern(N,d_lambda,theta0,theta,select);
plot(theta,20*log10(pattern/max(pattern)),'k--');
xlabel('方位/°');ylabel('归一化方向图/dB');xlim([-90 90]);ylim([-50 0]);
legend('未加窗','加泰勒窗');
title(['阵元数N=',num2str(N)]);

% 3、固定波束指向时,对比不同阵元数的波束形成方向图
theta0 = 0;
N = 8;
pattern = Antenna_Pattern(N,d_lambda,theta0,theta);
figure;
plot(theta,20*log10(pattern/max(pattern)),'b-');
hold on;

N = 16;
pattern = Antenna_Pattern(N,d_lambda,theta0,theta);
plot(theta,20*log10(pattern/max(pattern)),'r-.');
N = 32;
pattern = Antenna_Pattern(N,d_lambda,theta0,theta);
plot(theta,20*log10(pattern/max(pattern)),'k--');
xlabel('方位/°');ylabel('归一化方向图/dB');xlim([-90 90]);ylim([-50 0]);
legend('N = 8','N = 16','N = 32');
title('波束指向0度,未加窗');

2.雷达系统仿真模型

clc;
clear;
close all;

%%  雷达系统仿真模型
setParameter();     %  设置雷达系统参数

global para;
% 设置目标参数
set_TarInfo.tarNum = 2;
set_TarInfo.tar_R0 = [500,500];                 % 目标距离
set_TarInfo.tar_V0 = [0,0];                             % 目标速度
set_TarInfo.tar_Ag = [-20,30];                         % 目标角度
set_TarInfo.Rcs = [1,5];                                % 目标rcs
set_TarInfo.SNR = 10;                                           % 信噪比

% 雷达发射和接收信号模型
para.Tx_Num = 1;        % 发射阵元数目
para.Rx_Num = 32;        % 接收阵元数目
global NumChirp;
NumChirp = 1;
rawData = RadarSigModel_MultiCh(set_TarInfo);

%% 雷达信号处理
global NumADC;

fs = para.fs;
u = para.u;
c = para.c;
Rx_Num = para.Rx_Num;

Nfft1 = 2^ceil(log2(NumADC));                           % 距离维FFT点数
Nfft3 = 128;                                             % 通道间FFT点数
R_point = (fs/Nfft1)*c/(2*u);                           % 距离点精度
Ag_point = 2/Nfft3*180/pi;                              

% 距离维FFT
win1 = hamming(NumADC);       % 加汉明窗
fft_Data = zeros(Nfft1,Rx_Num);
for ii = 1:Rx_Num
	fft_Data(:,ii) = fft(rawData(:,:,ii).*win1,Nfft1);
end

% 角度维FFT
win3 = hamming(Rx_Num);       % 加汉明窗
fft3_Data = zeros(Nfft1,Nfft3);
for jj = 1:Nfft1
	fft3_Data(jj,:) = fft(fft_Data(jj,:).*win3',Nfft3);
end

figure;
mesh(mag2db(abs(fft3_Data)));xlabel('角度维');ylabel('距离维');

  • 30
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Zhi Zhao

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值