声呐系统中的波束形成与MALTAB实现

  • 声呐系统与波束形成(Beamforming)
    • 声呐信号处理流程
    • 假设条件
    • 传统波束形成器(Conventional Beamforming, CBF)
  • 波束图Bp(θ)
    • 均匀线阵(ULA)CBF的波束图
    • MATLAB仿真
  • 方位估计(Direction of Arrival, DOA)
    • 空间谱P(θ)
    • MATLAB仿真

声呐系统与波束形成(Beamforming)

Beamforming: conjunction with an array of sensors to provide a versatile form of spatial filtering.
本质:多个传感器的数据(发射/接收) 经过加权相加, 得到增益加权相加使得某个方向的输出增大, 相当于指向了该方向, 也称为空域滤波。
应用场景:雷达、 声呐、 导航、 地震波探测、 语音处理、 移动通信、 医用超声设备。

声呐信号处理流程

假设条件

  1. 窄带(单频);
  2. 远场平面波(目标距离远大于阵长);
  3. 无多途干扰;
  4. 信号无多普勒,无畸变。

传统波束形成器(Conventional Beamforming, CBF)

波束形成器就是通过一个加权向量w对阵列接收到的数据加权相加得到输出 y(t) = wHx(t),所以确定w是beamforming中非常重要的步骤。我们将所有问题都简化,不存在噪声,只有单一一个信源,而且这个信源还是正弦波。我们的阵列接收对简谐波在不同阵元上造成了不同的时延,或者说是相位差。 那么非常直观明确的,要想对这个简谐波得到最大程度的放大,就只需将这些时延给抵消。所以最优加权向量就应该等于正弦波来波方向的方向向量。 这就得到了传统均匀加权波束形成CBF:w=a(θ0),a(θ0)为方向向量。在高斯白噪声背景下,即x(t)=a(θ0)s(t)+n(t)时,结论不变。

波束图Bp(θ)

波束图是CBF对不同来波方向的响应。
BF的加权向量w确定后(例如CBF:w=a(30°)),该BF对θ∈R的响应Polar图即为波束图。

均匀线阵(ULA)CBF的波束图

方向向量:

加权向量:

波束图:



MATLAB仿真

编写10阵元线阵常规波束形成程序,画出波束图,指向0度。部分程序:

clc;close all;clear;
mode = 1; % mode1显示声压谱,mode2显示能量谱
d=1; f=300; nmd=1500/f; N=10;
sita=0:0.001:2*pi;
R=abs( sin(N*pi*d.*sin(sita)./nmd)./N./sin(pi*d.*sin(sita)./nmd) );
% set(gcf,'Position',[100,300,800,300], 'color','w')
...

完整程序:https://download.csdn.net/download/weixin_43713224/10955709

仿真结果示例:

方位估计(Direction of Arrival, DOA)

DOA(direction of arrival)估计也就是方位估计, 是阵列信号处理中的重要内容,也是声呐系统中必不可少的一部分。 空间谱和波束形成的关系是:空间谱估计可以通过多个方位扫描进行多个波束形成来实现。此外,空间谱估计也可以由其他参数化和非参数化的方法来实现。

空间谱P(θ)

空间谱,即来波信号到达时,令BF在θ∈R范围搜索,得到的空间谱P(θ)。例如,在白噪声背景下,假设CBF:w=a(θ), θ=[-10°; -9°; -8°; … 10°],逐次搜索,得到响应y(θ)=w(θ)x(t)=w(θ)[as(t)+n(t)],那么波束图P(θ)=wHxHxw,即:

MATLAB仿真

编写10阵元线阵常规波束形成扫描估计方位的程序,来波方向-20度和10度,高斯白噪声,SNR都是10dB。部分程序:

clc;close all;clear;
N=10; d=1; nmd=2; snr=10;
theta_0 = -pi:0.01:pi; %扫描方向,即波束指向
theta = [deg2rad(-20), deg2rad(10)]; %来波方向
a = zeros(1,N); %方向向量a(1×N)初始化
w = zeros(length(theta),1); %加权向量w(theta)初始化
P = zeros(1,length(theta_0)); %空间谱P初始化
...

完整程序: https://download.csdn.net/download/weixin_43713224/10955709

仿真结果示意图:

水声工程中的波束形成与MALTAB实现相关推荐

  1. matlab计算海洋浮力频率_水下机器人在海洋石油工程中的应用

    世界海洋总面积约为3.6×108平方千米,占地球总面积的70.8%,在广阔的海洋中,蕴含着非常丰富的生物资源.矿物资源和海洋能源.其中最具经济开采价值的是海底的石油和天然气资源,海洋石油资源储量占世界 ...

  2. 电子信息工程水声考研去向_水声工程专业考研专业介绍及就业解析

    (一)学科简介 水声工程学科于1987年被确定为第一批国家重点学科,2001年免答辩被确定为国家重点学科,2007年再一次被确定为国家重点学科水生工程是船舶与海洋工程的二级学科. 水声工程为国家重点学 ...

  3. android读取工程目录下的文件,Android编程实现读取工程中的txt文件功能

    本文实例讲述了Android编程实现读取工程中的txt文件功能.分享给大家供大家参考,具体如下: 1. 众所周知,Android的res文件夹是用来存储资源的,可以在res文件夹下建立一个raw文件夹 ...

  4. pkg-config工具在实际工程中的用法

    在如今这个开源的环境里,想要开发某个功能,我们都会下意识的上网搜索有没有开源库,如果有开源库,那么好,下载下来给它编译好,使用.但是在使用过程中,你是否遇到不知如何将第三方库编译,链接到自己的工程中? ...

  5. Instagram个性化推荐工程中三个关键技术是什么?

    作者 | Ivan Medvedev,Haotian Wu,Taylor Gordon 译者 | 陆离 编辑 | Jane 出品 | AI科技大本营(ID:rgznai100) [导语]近期,Face ...

  6. asp.net工程中aspx文件与codebehind文件的关联问题

    经常碰上转换WEB工程之后的aspx与aspx.cs是并列显示,而不是点击aspx前面的加号再显示aspx.cs,虽然不影响功能,但心里总不舒服.经过查找, 直接修改工程文件.csproj, 找到as ...

  7. 如何将深度学习模型部署到实际工程中?(分类+检测+分割)

    应用背景介绍 早在遥远的1989年,一家叫做ALVIVN的公司首次将神经网络用在汽车上,进行车道线检测和地面分割.时至今日,深度学习已经应用在自动驾驶系统的多个分支领域.首先是感知领域,常用的传感器有 ...

  8. 从工程中删除Cocoapods

    错误: diff: /../Podfile.lock: No such file or directory diff: /Manifest.lock: No such file or director ...

  9. 圆角装饰条_天然石材在装饰工程中的收口收边工艺

    在建筑装饰工程中,收口是施工过程里使用比较频繁的一个话语,收口这项工艺贯彻在整个装饰装修工程的作业过程中,而其中石材的收口问题则非常重要. 尤其是一些细节性的石材装饰部位收口如果没有做好,不仅影响美观 ...

最新文章

  1. 我的总结SVN的使用
  2. poj2175费用流消圈算法
  3. Servlet中乱码问题
  4. linux bash 学习
  5. flash文件制作笔记
  6. html5实现饼图和线图-我们到底能走多远系列(34)
  7. webpack创建页面的过程
  8. 京东时间校准_微星PAG272QR评测(友达新代号屏出现,QR2正在测试,稍晚一点时间发出)...
  9. 我的世界java版forge放在哪_我的世界forge怎么装mod(mod安装方法介绍)
  10. 开箱:阿里技术人在读什么书?
  11. pythonqq机器人酷q_NoneBot+酷Q,打造QQ机器人
  12. Latex 三级子标题\subsubsection{xxx}后面内容不换行 要注意
  13. 抖音只能上下滑动吗_仿抖音上下滑动分页视频
  14. The Balance POJ - 2142
  15. STM8的C语言编程(14)--+PWM
  16. sublimelinter php,sublime text 3 在Windows下配置sublimelinter-php的路径问题
  17. QualNet收发包过程分析(一)
  18. Linux 查看进程状态
  19. Revit API 开发(12): Revit 文件存储结构
  20. 安徽隐秘后花园,景色绝美动人,人生必去不去遗憾

热门文章

  1. BurpSuit抓包HTTP响应报文
  2. IBM小型机AIX操作系统总结09–文件系统FS
  3. pyinstaller打包报错 Failed to execute script ‘xxx‘ due to unhandled exception:input():lost sys.stdin
  4. Redis主从哨兵集群模式概念以及搭建
  5. HDU 6203 ping ping ping(在线倍增LCA+BIT)
  6. vs2008能用c语言吗,如何用VS2008编写C语言(2)
  7. 【设计模式】对六大原则的宏观把控和微观细化
  8. 某建筑中央空调计算机控制系统
  9. Alfresco安装后启动异常处理
  10. 数据仓库弊_数据仓库的利与弊