请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

快捷登录

手机动态码快速登录

手机号快速注册登录

2022-8-14 08:46:37 · 音箱设备

均匀线列阵常规波束形成原理—麦克风阵列系列(四)

继上篇文章,本篇继续学习,包括内容为:
均匀线列阵常规波束形成原理概述
例3.4 均匀线阵列常规波束图
<hr/>采用下图所示坐标系统:



图1 均匀线列阵坐标系统

对于该坐标系统,假设由 M 个均匀分布的阵元组成的线列阵,假设阵元间距为 d ,则线列阵总长度为 L=Md 。这里计算线阵列长度时,将两端阵元向外各延伸了 \frac{d}{2} ,该均匀线列阵相当于对原连续阵列进行了空间采样。
各阵元的位置可以表示为:
p_m=\left[ 0,\left( m-\frac{M+1}{2}d \right),0 \right],m=1,...,M
运用每个阵元的加权系数表示将其视作连续线阵时的加权函数,即:
w^*_a(y)=\sum_{m=1}^{M}{w^*_m\delta \left( y-\left( m-\frac{M+1}{2} \right) d \right)}
其中, w^*_m 是第个阵元的加权系数; \delta\left( \cdot \right) 是 Kronecker函数。
Kronecker函数为:
\delta_{ij}=\left\{ \begin{aligned} &1,\quad i=j \\ & 0, \quad i\ne j \end{aligned} \right.  
在之前的篇章讲述过,假设一个放置在 z 轴的连续线阵的频率-波数响应为:
Y\left( \omega, k_z\right)=\int_{-\frac{L}{2}}^{\frac{L}{2}}w^*_a(z)e^{-ik_zz}dz
将上述公式替换为 y 轴的一个均匀分布的线阵列,即为:
\begin{align}\\ Y\left( \omega, k_y\right)&=\int_{-\infty}^{\infty}\sum_{m=1}^{M}{w^*_m\delta \left(y-\left( m-\frac{M+1}{2} \right)  d \right)}e^{-ik_yy}dy\\ \quad &= \sum_{m=1}^{M}{w^*_me^{-i\left(m-\frac{M+1}{2} \right)k_yd}}\\ \quad &= \sum_{m=1}^{M}{w^*_me^{i\left(m-\frac{M+1}{2} \right)kdsin\theta}}\\ \end{align}
改为波束响应的形式为:
B\left( \theta \right)=\sum_{m=1}^{M}{w^*_me^{i\left(m-\frac{M+1}{2} \right)kdsin\theta}}
还是基于此均匀线列阵坐标系统,阵列的流行项链为:
\bold p(\theta)=\left[ e^{i\frac{1-M}{2}kdsin\theta},...,  e^{i\left( m- \frac{M+1}{2}\right)kdsin\theta},...,e^{i\frac{M-1}{2}kdsin\theta}\right]^T
波束响应可表达为:
B\left( \theta \right)=\bold w^H\bold p\left( \theta \right)
对该均匀线列阵进行常规波束形成,假设波束指向角为 \theta _o ,波束加权向量为:
\bold w_c=\frac{\bold p\left( \theta_o \right)}{M}
代入上式可计算出波束方向响应为:
\begin{align} B\left(\theta \right)&=\frac{\bold w^H_c\bold p\left( \theta_o \right)}{M}\\ &=\frac{\bold p^H\left( \theta_o \right)\bold p\left( \theta \right)}{M}\\ &=\frac{sin\left( Mkd\left( sin\theta-sin\theta_o \right)/2 \right)}{Msin\left( kd\left( sin\theta-sin\theta_o \right)/2 \right)} \end{align}
<hr/>例3.4 均匀线阵列常规波束图
假设波束观测方向为 \theta_o=0^\circ ,计算常规波束形成获得的波束响应。假设阵元数目为 M=10 ,即阵元间隔 d=\frac{L}{M}=\frac{\lambda}{2} 。采用上述计算的波束形成公式计算波束响应。



图2 均匀线阵列常规波束图



图2 均匀线阵列常规波束图

另附实现代码如下:
  1. c=340;       %声速
  2. theta_d = 0*pi/180; %入射角度
  3. f=1000;      %频率
  4. space=c/f/2;  %麦克风间距
  5. M=10;         %麦克风数量
  6. theta_angle=0:0.1:360;
  7. theta=theta_angle*pi/180;   
  8. B=sin((M*pi*f*space*(sin(theta)-sin(theta_d)))/c)...
  9.     ./(M*sin((pi*f*space*(sin(theta)-sin(theta_d)))/c));
  10. B_db = 20*log10(B);
  11. limit_dB = -50;
  12. index = B_db < limit_dB;
  13. B_db(index) = limit_dB;
  14. plot(theta_angle, B_db, 'linewidth', 1.5);
  15. grid on;
  16. title('均匀线阵列常规波束响应');
  17. xlabel('\theta/(\circ)');ylabel('20lg|B(\theta)|/dB');
  18. figure;
  19. GraphicHandle = polar(theta, B_db);
  20. set( GraphicHandle, 'LineWidth', 1.5);
复制代码
<hr/>参考书籍:
《优化阵列信号处理》

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册 手机动态码快速登录

x

举报

全部评论 4

第一个式子打错了,d应该在括号外面
2022-8-14 08:44:43
这个是用什么写的
2022-8-14 08:45:29
评论·
·举报
作者  你好我想问一下  均匀线性阵列 我看到有一些在前面乘以sqrt(1/N)是因为使用了混合预编码吗?
2022-8-14 08:46:13
这样画的图是错的,因为polar会把负值变成正值然后视作半径
2022-8-14 08:46:37
热门推荐
您需要登录后才可以回帖 立即登录 手机动态码快速登录
说说你的想法......
0
1
0
返回顶部