阵列信号处理---频率-波数响应和波束方向图

news2025/1/31 11:22:22

波束延迟求和器

阵列是由一组全向阵元组成,阵元的位置为 p n p_n pn,如下图所示:

阵元分别在对应的位置对信号进行空域采样,这样就产生了一组信号信号为 f ( t , p ) f(t,p) f(t,p),具体表示如下:

f ( t , p ) = [ f ( t , p 0 ) , f ( t , p 1 ) , … , f ( t , p N − 1 ) ] T f(t,p) = \big[f(t,p_0),f(t,p_1),…,f(t,p_{N-1})\big]^T f(t,p)=[f(t,p0)f(t,p1)f(t,pN1)]T

对每个阵元的输出用一个线性时不变滤波器进行处理,该滤波器的冲激响应为 h n ( τ ) h_n(\tau) hn(τ),并对所有滤波器求和,得到阵列的输出 y ( t ) y(t) y(t),如下图所示:

其中, h n ( τ ) = 1 N δ ( τ + τ n ) h_n(\tau)=\frac{1}{N}\delta(\tau+\tau _n) hn(τ)=N1δ(τ+τn)

假设观察间隔无限长,则 y ( t ) y(t) y(t)可以写为卷积积分的形式:

y ( t ) = ∑ n = 0 N − 1 ∫ − ∞ ∞ h n ( t − τ ) f n ( τ , p n ) d τ y(t)=\sum_{n=0}^{N-1}\int_{-\infty}^{\infty}h_{n}(t-\tau)f_n(\tau,p_n)d\tau y(t)=n=0N1hn(tτ)fn(τ,pn)dτ

用矢量表示为

y ( t ) = ∫ − ∞ ∞ h ( t − τ ) f ( τ , p ) d τ y(t)=\int_{-\infty}^{\infty}\pmb{h}(t-\tau)\pmb{f}(\tau,\pmb{p})d\tau y(t)=h(tτ)f(τ,p)dτ

其中

h ( τ ) = [ h 0 ( τ ) , h 1 ( τ ) , … , h N − 1 ( τ ) ] T \pmb{h}(\tau)=\big[h_{0}(\tau),h_{1}(\tau),…,h_{N-1}(\tau)\big]^T h(τ)=[h0(τ)h1(τ)hN1(τ)]T

在频域表示为

Y ( ω ) = ∫ − ∞ ∞ y ( t ) e − j ω t d t = H ( ω ) F ( ω ) Y(\omega)=\int_{-\infty}^{\infty}y(t)e^{-j\omega t}dt=\pmb{H}(\omega)\pmb{F}(\omega) Y(ω)=y(t)etdt=H(ω)F(ω)

例子:

假如输入是一个平面波,传播方向为 α \alpha α,时域频率为 ω \omega ω f ( t ) f(t) f(t)是在坐标系原点接收到的信号,则

f ( t , p ) = [ f ( t − τ 0 ) , f ( t − τ 1 ) , … , f ( t − τ N − 1 ) ] T f(t,\pmb{p}) = \big[f(t-\tau_0),f(t-\tau_1),…,f(t-\tau_{N-1})\big]^T f(t,p)=[f(tτ0)f(tτ1)f(tτN1)]T

其中,

τ n = α T p n c \tau_n = \frac{\alpha^Tp_n}{c} τn=cαTpn

c c c表示介质中的传播速度, α \alpha α是球坐标系下的一个单位矢量,表示为

α = [ − s i n θ c o s ϕ , − s i n θ s i n ϕ , − c o s θ ] T \alpha=[-sin\theta cos\phi,-sin\theta sin\phi,-cos\theta]^T α=[sinθcosϕsinθsinϕcosθ]T

假设阵元的位置如下所示:

波的入射方位角为45°,俯仰角为45°,波的频率为300Hz,传播速度为340m/s,时域采样率为20KHz,对每个不同阵元接收到的时域信号f显示,结果如下:

代码如下:

clc;
close all;
clear all;

P = [0,0,-1; %p0
    0,0,-0.5; %p1
    0,0,0; %p2
    0,0,0.5; %p3
    0,0,1]; %p4%阵元位置
figure(1);
scatter3(P(:,1),P(:,2),P(:,3),...
        'MarkerEdgeColor','k',...
        'MarkerFaceColor',[0 .75 .75])
view(135,10);
xlim([0,2]);ylim([0,2]);zlim([-2,2]);
title('阵元阵列示意图')

theta = 0; %平面波的入射方位角
phi = 45; %平面波的入射俯仰角

a = [-sind(phi)*cosd(theta);
    -sind(phi)*sind(theta);
    -cosd(phi)]; %a为单位矢量
c = 340; %传播速度
tau = P * a / c; %波到每个阵元上的时延

f0 = 300; %波的频率
fs = 20000; %采样频率
t = 0 : 1/fs : 2/f0; %绘制2个周期
figure(2);
for i = 1:1:5
    subplot(5,1,i);
    T = t-tau(i);
    S(i,:) = cos(2*pi*f0*T);
    plot(T,S(i,:));title(['P',num2str(i),'阵元接收到信号'])
end

在这种情况下,将每个阵元的输入信号平移,使其在时间上对齐,然后将其相加。操作流程如下图,其中包含了归一化的因子 1 / N 1/N 1/N,使其输出为 f ( t ) f(t) f(t)。其中

h n ( τ ) = 1 N δ ( τ + τ n ) h_n(\tau)=\frac{1}{N}\delta(\tau+\tau_n) hn(τ)=N1δ(τ+τn)

延迟-求和波数形成器

阵列流形矢量

定义为包含阵列的所有空间特征,表示如下

v k ( k ) = [ e − j k p 0 , e − j k p 1 , … , e − j k p N − 1 ] T \pmb{v}_k(k)=\big[e^{-jkp_0},e^{-jkp_1},…,e^{-jkp_{N-1}}\big]^T vk(k)=[ejkp0ejkp1ejkpN1]T

下标 k k k表示参数属于 k k k空间

其中 k k k为波数,定义如下

k = 2 π λ α k=\frac{2\pi}{\lambda}\alpha k=λ2πα

波束的幅度为:

∣ k ∣ = 2 π λ |k|=\frac{2\pi}{\lambda} k=λ2π

频率-波数响应函数

将平面波信号扩展到空时信号,则基函数为 ω \omega ω和波束 k k k的函数,具体形式如下:

f ( t , p ) = e j ω t v k ( k ) \pmb{f}(t,\pmb{p})=e^{j\omega t}\pmb{v}_k(k) f(t,p)=etvk(k)

阵列处理器对一个平面波的响应为,在时域表达上为:

y ( t , k ) = H T ( ω ) v k ( k ) e j ω t y(t,\pmb{k})=\pmb{H}^T(\omega)\pmb{v}_k(k)e^{j\omega t} y(t,k)=HT(ω)vk(k)et

对应到频域上为:

y ( ω , k ) = H T ( ω ) v k ( k ) y(\omega,\pmb{k})=\pmb{H}^T(\omega)\pmb{v}_k(k) y(ω,k)=HT(ω)vk(k)

阵列的空时处理完全由上式可以描述,定义为:

Υ ( ω , k ) = H T ( ω ) v k ( k ) \Upsilon (\omega,k)=H^T(\omega)v_k(k) Υ(ω,k)=HT(ω)vk(k)

波束方向图

一个阵列的波束方向图定义的背景是平面波在一个局部均匀的介质中传播,约束为波动方程,波束方向图是用入射方向表示的频率-波数响应函数,表达如下:

B ( ω : θ , ϕ ) = Υ ( ω , k ) ∣ k = 2 π λ α ( θ , ϕ ) B(\omega:\theta,\phi)=\Upsilon (\omega,k)|_{k=\frac{2\pi}{\lambda}\alpha(\theta,\phi)} B(ω:θ,ϕ)=Υ(ω,k)k=λ2πα(θ,ϕ)

从上式可以看到,波数方向图是频率-波数响应在一个半径为 2 π / λ 2\pi/\lambda 2π/λ的球上的值。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1278987.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2023.12.2 做一个后台管理网页(左侧边栏实现手风琴和隐藏/出现效果)

2023.12.2 做一个后台管理网页(左侧边栏实现手风琴和隐藏/出现效果) 网页源码见附件,比较简单,之前用很多种方法实现过该效果,这次的效果相对更好。 实现功能: (1)实现左侧边栏的手…

使用PCReg.PyTorch项目训练自己的数据集进行点云配准

项目地址: https://github.com/zhulf0804/PCReg.PyTorch/tree/main 网络简介: 网络是基于PointNet Concat FC的,它没有其它复杂的结构,易于复现。因其简洁性,这里暂且把其称作点云配准的Benchmark。因作者源码中复杂…

深度学习记录--logistic回归函数的计算图

计算图用于logistic回归函数 先回顾一下单一样本的logistic回归损失函数的公式,公式如下: 将logistic函数用计算图表示出来(以两个基础量为例),计算图如下: 前向传播已经完成,接下来完成后向传播 运用链式法则依次求…

使用 STM32 微控制器读取光电传感器数据的实现方法

本文介绍了如何使用 STM32 微控制器读取光电传感器数据的实现方法。通过配置和使用STM32的GPIO和ADC功能,可以实时读取光电传感器的模拟信号并进行数字化处理。本文将介绍硬件连接和配置,以及示例代码,帮助开发者完成光电传感器数据的读取。 …

【探索Linux】—— 强大的命令行工具 P.19(多线程 | 线程的概念 | 线程控制 | 分离线程)

阅读导航 引言一、 Linux线程概念1. 什么是线程2. 线程的概念3. 线程与进程的区别4. 线程异常 二、Linux线程控制1. POSIX线程库2. 创建线程 pthread_create() 函数(1)头文件(2)函数原型(3)参数解释&#x…

elasticsearch 内网下如何以离线的方式上传任意的huggingFace上的NLP模型(国内闭坑指南)

es自2020年的8.x版本以来,就提供了机器学习的能力。我们可以使用es官方提供的工具eland,将hugging face上的NLP模型,上传到es集群中。利用es的机器学习模块,来运维部署管理模型。配合es的管道处理,来更加便捷的处理数据…

深度学习记录--logistic回归损失函数向量化实现

前言 再次明确向量化的目的:减少for循环的使用,以更少的代码量和更快的速度来实现程序 正向传播的向量化 对于,用向量化来实现,只需要就可以完成,其中,, ps.这里b只是一个常数,但是依然可以加在每个向量里(python的…

TLS协议握手流程

浅析 TLS(ECDHE)协议的握手流程(图解) - 知乎 前言 通过 wireshark 抓取 HTTPS 包,理解 TLS 1.2 安全通信协议的握手流程。 重点理解几个点: TLS 握手流程:通过 wireshark 抓取 HTTPS 包理解…

项目中遇到的半导体公司

作为一个技术人,我并不是亲美,从技术的实事求是角度讲,不得不感叹欧美的半导体技术。他们的datasheet能学到的东西太多太多;我甚至佩服他们缜密的逻辑。从他们的文章中领悟我们技术到底有多low,没办法一个一个了解所有…

Nginx转发内网Flv视频流

1、环境说明 Docker Nginx:1.21.5 实现Nginx ssl转发内网flv视频流 2、配置nginx.conf http {upstream live {server 10.10.10.10:8300;keepalive 64;}map $http_upgrade $connection_upgrade {default upgrade; close;}server {listen 80;listen 443…

ssm+vue的罪犯信息管理系统(有报告)。Javaee项目,ssm vue前后端分离项目。

演示视频: ssmvue的罪犯信息管理系统(有报告)。Javaee项目,ssm vue前后端分离项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构&…

Redis hash表源码解析

整体数据结构:链式hash解决hash冲突、采用渐进式hash来完成扩容过程。 /** 哈希表节点*/ typedef struct dictEntry {// 键void *key;// 值union {void *val;uint64_t u64;int64_t s64;} v;// 指向下个哈希表节点,形成链表struct dictEntry *next;} dict…

Adobe Acrobat DC 将PDF转曲步骤

1、编辑--更多--背景--添加 2、只需要将不透明度调为0即可。 3、工具--印刷制作 4、拼合器预览 5、只需要将下面标出来的地方勾选即可 6、可以另存为,不影响源文件 7、检查是否成功,文件--属性--字体为空,说明成功了 参考资料: …

详解Spring中BeanPostProcessor在Spring工厂和Aop发挥的作用

😉😉 学习交流群: ✅✅1:这是孙哥suns给大家的福利! ✨✨2:我们免费分享Netty、Dubbo、k8s、Mybatis、Spring...应用和源码级别的视频资料 🥭🥭3:QQ群:583783…

【论文阅读】ICRA: An Intelligent Clustering Routing Approach for UAV Ad Hoc Networks

文章目录 论文基本信息摘要1.引言2.相关工作3.PROPOSED SCHEME4.实验和讨论5.总结补充 论文基本信息 《ICRA: An Intelligent Clustering Routing Approach for UAV Ad Hoc Networks》 《ICRA:无人机自组织网络的智能聚类路由方法》 Published in: IEEE Transactions on Inte…

FISCO-BCOS 在ARM系统架构搭建节点(国密版)

问题: 使用 fisco-bcos v2.9.1 搭建一个节点,批量上链1000条数据,在上链200条-400条数据之间节点会出现异常,导致后面数据不能上链。 系统环境 操作系统:统信 查看系统构架 ld -version rootuos-PC:/# ld -version …

RK3568平台开发系列讲解(Linux系统篇)netlink 监听广播信息

** 🚀返回专栏总目录 文章目录 一、什么是netlink 机制二、netlink 的使用2.1、创建 socket2.2、绑定套接字2.3、接收数据沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇将介绍如何通过 netlink 监听广播信息。 一、什么是netlink 机制 Netlink 是 Linux 内核中…

【C/C++笔试练习】公有派生、构造函数内不执行多态、抽象类和纯虚函数、多态中的缺省值、虚函数的描述、纯虚函数的声明、查找输入整数二进制中1的个数、手套

文章目录 C/C笔试练习选择部分(1)公有派生(2)构造函数内不执行多态(3)抽象类和纯虚函数(4)多态中的缺省值(5)程序分析(6)重载和隐藏&a…

使用gcloud SDK 管理和部署 Cloud run service

查看cloud run 上的service 列表: gcloud run services list > gcloud run services listSERVICE REGION URL LAST DEPLOYED BY LAST DEPL…

【Go语言反射reflect】

Go语言反射reflect 一、引入 先看官方Doc中Rob Pike给出的关于反射的定义: Reflection in computing is the ability of a program to examine its own structure, particularly through types; it’s a form of metaprogramming. It’s also a great source of …