基于matlab实现任意阵列的常规波束形成

简介: 基于matlab实现任意阵列的常规波束形成

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法       神经网络预测       雷达通信      无线传感器        电力系统

信号处理              图像处理               路径规划       元胞自动机        无人机

⛄ 内容介绍

波束形成是阵列信号处理中的一个研究热点,其应用涉及雷达,通信,声纳,导航,射电天文以及生物医学工程等军事和民用领域。本文基于matlab实现任意阵列的常规波束形成。

⛄ 代码

clear all

clc

close all

% n基元的数量

% b波束的指向,单位为角度

% fs抽样频率

% c波速

% f信号频率

% an为阵元点的位置


%以下为设置,可以修改

N=1                         % N波束图的角度分辨力

T=0.01                      % T信号的长度

f=100;c=1500;b=-30;fs=5*f;an=[0 0;1 1; -1 2; 4 5;6  7;-3 -4;-7 -5;-2 -5]   % 信号初始信息




%以下为程序

t=0:1/fs:T;                 % 抽样时间

s0=exp(j*2*pi*f*t);         % 原始信号

number=length(t);           % 采样点的长度

[n,v]=size(an);             % n为阵元个数

S=zeros(n,number);          % 建立一个N行length(t)列的零矩阵用来表示收到的信号                      

P=zeros(n,number);          % 建立一个N行length(t)列的零矩阵用来表示处理后的信号

power=zeros(1,(360/N)+1);   % 用来放功率

for m=1:n

   bn(m,:)=an(m,:)-an(1,:);

end

cn(:,1)=-sin(b*pi/180)*bn(:,1);

cn(:,2)=-cos(b*pi/180)*bn(:,2);

dn=cn(:,1)+cn(:,2);

tao=dn/c;                     % tao为各阵元点与第一个阵元点的时延

for m=1:n

   kn=tao(m,1);

   S(m,:)=exp(j*2*pi*f*(t+kn));  % S为收到的信号

end


i=0;

for thita=-180:N:180

   i=i+1;

   thi=thita*pi/180;           % 探测角度进行幅度转换

   cn0(:,1)=-sin(thi)*bn(:,1);

   cn0(:,2)=-cos(thi)*bn(:,2);

   dn0=cn0(:,1)+cn0(:,2);

   tao0=dn0/c;                

   

   

   % 下面对信号进行处理

   for m=1:n

       kn0=tao0(m,1);

       P(m,:)=S(m,:)*exp(-j*2*pi*f*kn0);  % S为收到的信号

   end

   S1=sum(P);                                     % 系统的输出

   power(i)=abs(S1*S1')/number;                   % 输出功率  

end

subplot(2,1,1);

plot(-180:N:180,power/max(power));

title('归一化波束图')

xlabel('与正横方向所成角度')

ylabel('响应幅值')

text(2,0.5,'f=100k;c=1500;fs=5f');

subplot(2,1,2);              %下面画出框图和蝶形图

thita=-180:N:180      %将弧度T还原为角度以在图中进行标注

power0=20*log10(power/max(power));

plot(thita,power0)

title('对数化波束图')

axis([-200,200,-200,4])

xlabel('与正横方向所成角度')

ylabel('响应强度(dB)')

⛄ 运行结果

⛄ 参考文献

[1] 付华敏.基于TS201的自适应波束形成算法实现[D].哈尔滨工程大学,2013.

[2] 潘敏.阵列天线波束形成技术研究[D].桂林电子科技大学,2010.DOI:10.7666/d.D563606.

⛳️ 代码获取关注我

❤️部分理论引用网络文献,若有侵权联系博主删除
❤️ 关注我领取海量matlab电子书和数学建模资料



相关文章
|
6月前
|
传感器 数据采集 算法
移动通信系统的LMS自适应波束成形技术matlab仿真
移动通信系统的LMS自适应波束成形技术matlab仿真
|
8月前
|
算法 5G
m基于毫米波大规模MIMO系统的的混合GMD波束形成算法matlab误码率仿真
m基于毫米波大规模MIMO系统的的混合GMD波束形成算法matlab误码率仿真
173 0
|
9月前
用于联合通信和传感(JCAS)的多波束优化(Matlab代码实现)
用于联合通信和传感(JCAS)的多波束优化(Matlab代码实现)
|
9月前
|
算法 5G
智能超表面(RIS)辅助双功能雷达和通信波束形成设计(Matlab代码实现)
智能超表面(RIS)辅助双功能雷达和通信波束形成设计(Matlab代码实现)
221 0
|
9月前
|
机器学习/深度学习 传感器 算法
基于MATLAB实现SMI波束形成与最优波束形成算法对比
基于MATLAB实现SMI波束形成与最优波束形成算法对比
|
9月前
|
机器学习/深度学习 传感器 数据采集
基于AIC,MDL,HQ,EDC算法实现阵列信号的信源数目估计附MATLAB代码
基于AIC,MDL,HQ,EDC算法实现阵列信号的信源数目估计附MATLAB代码
|
10月前
|
机器学习/深度学习 传感器 算法
【优化分布】基于遗传算法求解天线线性阵列分布优化问题附matlab代码
【优化分布】基于遗传算法求解天线线性阵列分布优化问题附matlab代码
|
10月前
|
机器学习/深度学习 传感器 算法
【定位问题】基于matlab实现矩形78阵列声源定位
【定位问题】基于matlab实现矩形78阵列声源定位
|
3月前
|
Perl
【MFAC】基于全格式动态线性化的无模型自适应控制(Matlab代码)
【MFAC】基于全格式动态线性化的无模型自适应控制(Matlab代码)
|
3月前
【数值分析】迭代法求方程的根(附matlab代码)
【数值分析】迭代法求方程的根(附matlab代码)

热门文章

最新文章