当前位置 : 主页 > 编程语言 > python >

【通信】Matlab实现LFMBF、LCMV、LFMCW等多种波束形成算法

来源:互联网 收集:自由互联 发布时间:2022-09-29
1 内容介绍 随着高速、超高速信号采集、传输及处理技术的发展,数字阵列雷达已成为当代雷达技术发展的一个重要趋势。数字波束形成(DBF)技术采用先进的数字信号处理技术对阵列天线

1 内容介绍

随着高速、超高速信号采集、传输及处理技术的发展,数字阵列雷达已成为当代雷达技术发展的一个重要趋势。数字波束形成(DBF)技术采用先进的数字信号处理技术对阵列天线接收到的信号进行处理,能够极大地提高雷达系统的抗干扰能力,是新一代军用雷达提高目标检测性能的关键技术之一本文针对相干干扰环境下数字阵列雷达的自适应干扰抑制问题,重点研究了窄带信号和宽带信号的自适应波束形成算法。

2 部分代码

close all

clear all

%TA:总仿真时间

%Ts:仿真采样间隔

%f0:信号频率或调制信号中心频率

%kind: 信号类型,0是单频信号,1是LFM信号

%B,T:在LFM信号时才用到,B是调制带宽,T是脉宽

%ArrayDistance:阵元间距

%ArrayNum:阵元个数

%Wopt:阵元加权系数向量

TA=1e-7; %时间长度

Fs=1e9; % 仿真采样率

Ts=1/Fs;

f0=100e6;% 载波频率

ArrayNum=16; %阵元个数

Wopt=ones(1,ArrayNum);

for i=1:ArrayNum

    Wopt(i)=0.54-0.46*cos(2*pi*(i-1)/ArrayNum);

end

% Wopt=ones(1,ArrayNum);

% for i=1:ArrayNum

%     Wopt(i)=1;

% end

%C:光速,在本程序中为常数

C=3E8;

Lambda=C/f0;

ArrayDistance=Lambda/2;

%生成入射角向量

Theta=linspace(-pi/4,pi/4,200);

LenTheta=length(Theta);

%生成等间距阵列的相位差

DeltaPhi=2*pi*ArrayDistance*Theta/Lambda;

t=0:Ts:TA;

LenTime=length(t);

q=12.5*1e12;

input=zeros(LenTime,ArrayNum);

inputA=zeros(LenTime,ArrayNum);

output=zeros(LenTheta,LenTime);

outputA=zeros(LenTheta,LenTime);

for i=1:LenTheta

    for k=1:ArrayNum

        for t=0:Ts:TA

        %input(:,k)=exp(j*2*pi*f0*t+j*k*DeltaPhi(i))*Wopt(k);

        input(:,k)=exp(0.5*q*t^2+j*2*pi*f0*t+j*k*DeltaPhi(i))*Wopt(k);

        inputA(:,k)=exp(j*2*pi*f0*t+j*k*2*pi*ArrayDistance/Lambda*sin(Theta(i)))*Wopt(k);

           % *exp(j*k*DeltaPhi(i));

        end

    %inputLineVector=input(l,1:ArrayNum);

    output(i,:)=sum(input,2);%求和   

    outputA(i,:)=sum(inputA,2);

    end

end

figure(1)

subplot(2,1,1);

A=output(1:LenTheta,1);

% G=abs(A/max(A));

plot(Theta*180/pi,20*log10(abs(A')/max(abs(A'))));

title('天线波束方向图');

axis([-45,45,-70,5]);

subplot(2,1,2);

A=output(1:LenTheta,(LenTime-1)/2);

plot(Theta*180/pi,20*log10((abs(A')/max(abs(A')))),'r-.');

title('天线波束方向图');

xlabel('入射角');

%ylabel('T0时刻和信号幅度');

%axis([-90,90,min(abs(A))*0.9,max(abs(A))*1.1]);

axis([-45,45,-70,5]);    

%BeamFormingSingleFreRF(1e-6,1/10e9,2e9,8)

           

figure(2);

subplot(2,1,1);

B=outputA(1:LenTheta,1);

% G=abs(A/max(A));

plot(Theta*180/pi,20*log10(abs(B')/max(abs(B'))));

title('天线波束方向图');

axis([-45,45,-70,5]);

subplot(2,1,2);

B=outputA(1:LenTheta,(LenTime-1)/2);

plot(Theta*180/pi,20*log10((abs(B')/max(abs(B')))),'r-.');

title('天线波束方向图');

xlabel('入射角');

%ylabel('T0时刻和信号幅度');

%axis([-90,90,min(abs(A))*0.9,max(abs(A))*1.1]);

axis([-45,45,-70,5]);    


3 运行结果

【通信】Matlab实现LFMBF、LCMV、LFMCW等多种波束形成算法_参考文献

【通信】Matlab实现LFMBF、LCMV、LFMCW等多种波束形成算法_自适应_02

【通信】Matlab实现LFMBF、LCMV、LFMCW等多种波束形成算法_matlab代码_03

【通信】Matlab实现LFMBF、LCMV、LFMCW等多种波束形成算法_matlab代码_04

4 参考文献

[1]杨洁. 阵列数字波束形成算法及实现研究[D]. 南京理工大学, 2013.

博主简介:擅长​​智能优化算法​​、​​神经网络预测​​、​​信号处理​​、​​元胞自动机​​、​​图像处理​​、​​路径规划​​、​​无人机​​、​​雷达通信​​、​​无线传感器​​等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

部分理论引用网络文献,若有侵权联系博主删除。


网友评论