波束形成

波束形成的目的,是使多阵元构成的基阵经适当处理得到在预定方向的指向性。——《声纳技术》
根据波束形成原理,进行程序实现,并简单作出其方向性图。
里面大部分参数可以直接修改。
结合下面另一个程序 希望对大家学习波束形成有所帮助
模拟平面波入射和相关法测向过程
clear all;clc;close all;
d=5;%阵间距
N=20;%传感器数量
l=d*(N-1);%阵长
c=1500;%声速
fs=2000;%采样率
t=0:1/fs:2-1/fs;
s=zeros(length(t),N);%每通道一列

f=100;%信号频率
w=f2pi;%角频率
lamda=c/f;%波长(保证两倍阵间距小于波长
k=w/c;%波数
g0=(N-1)d/cfs;%最大偏移量
g0=ceil(g0);%向上取整

%矩形窗(不做阵增益)
theta=1:0.5:180;
summ=zeros(length(s)-2*g0+1,length(theta));
summ1=zeros(1,length(theta));

dtheta=0;
% dtheta=10/180*pi;%阵偏移角度

for i=1:length(theta) %1~180 正前方90度

for n=1:N%最右侧为1号
    phi=(n-1)*cos(theta(i)/180*pi)*d*k;%phi=kx
    s(:,n)=exp(1j*(w*t+phi));%随号数增大 多走
end

for n=1:N
    g=round((n-1)*d*sin(dtheta)/c*fs);
    summ(:,i)=summ(:,i)+s(g0+g:length(t)-g0+g,n);%正方向时多走所以是"-"
end

summ1(i)=summ(:,i)'*summ(:,i);

end

summ1=summ1/max(summ1);%归一化
figure
plot(theta,summ1);
figure
plot(theta,log10(summ1/0.1));
figure
polarplot(theta/180*pi,log10(summ1/0.1)-min(log10(summ1/0.1)));

%hamming

theta=1:0.5:180;
summ=zeros(length(s)-2*g0+1,length(theta));
summ1=zeros(1,length(theta));

dtheta=0;
% dtheta=10/180*pi;%阵偏移角度
chuang=hamming(N);

for i=1:length(theta) %1~180 正前方90度

for n=1:N%最右侧为1号
    phi=(n-1)*cos(theta(i)/180*pi)*d*k;%phi=kx
    s(:,n)=chuang(n)*exp(1j*(w*t+phi));%随号数增大 多走
end

for n=1:N
    g=round((n-1)*d*sin(dtheta)/c*fs);
    summ(:,i)=summ(:,i)+s(g0+g:length(t)-g0+g,n);%正方向时多走所以是"-"
end

summ1(i)=summ(:,i)'*summ(:,i);

end

summ1=summ1/max(summ1);%归一化
figure
plot(theta,summ1);
figure
plot(theta,log10(summ1/0.1));
figure
polarplot(theta/180*pi,log10(summ1/0.1)-min(log10(summ1/0.1)));

矩形窗对比哈明闯
总能量恒定 抑制旁瓣也会增加主瓣宽度 线性操作二者性能不可兼得

  • 20
    点赞
  • 149
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值