欢迎光临散文网 会员登陆 & 注册

波束成形(Beamforming)的数学推导(一)---从发射端看

2022-07-19 23:36 作者:乐吧的数学  | 我要投稿

(本文在 B 站上,上传了一个小的讲解视频  https://www.bilibili.com/video/BV1914y1a73V/

本篇小文尝试用简单的语言,把波束赋形的数学原理说一下,力求浅显易懂,同时给出一个简单的 python 代码来演示这些数学公式。

本篇文章参考了 [MIMO通信的角域表示 - 知乎 (zhihu.com)](https://zhuanlan.zhihu.com/p/369340833),在此特别感谢。本文是对这篇文章中一个很小的一个部分的重写,使用更加详细的语言来把我的理解说一下。

我们要探讨的是波束如何成形的,也就是 “指哪儿打哪儿”,能让无线电波按照指定的方向打过去。

天线阵列,我们讨论的是 ULA(Uniform Linear Array,均匀线性阵列),如下图所示:

是水平均匀排列的一组天线,天线之间的间隔距离记为  d .

若不计信号的衰减,我们发射的数据是 s ( 一个复数 ),而且接收端与发射端距离足够远,发射端各个天线到接收端的单个天线,之间的连线,从发射端天线附近看起来就是平行的(实际上不是平行的,是接近平行,是为了计算的一种简化,如果不简化,计算就过于复杂)。


假如天线阵列连线 与 接收端连线构成的夹角为 %5Ctheta

那么接收端接收的 来自不同发射天线的无线信号,就有不同的时间延迟,进而有不同的相位旋转.

我们以最边上的一个发射天线为参照,我们选择直线距离最短的那个天线做参考,则第一根发射天线的发射无线电波到达接收天线,则紧挨着的第二根发射天线的无线电波,要比第一根发射天线发射的无线电波,多走的距离为
d%20%5Cspace%20%20%20cos(%5Ctheta)

则第 k 根天线发射的无线电波比第一根天线发射的无线电波,多走的距离为
(k-1)%20d%20%5Cspace%20cos(%5Ctheta)


则多走的时间为:  多走的距离除以光速 c

%5CDelta%20t%20%3D%20%5Cfrac%7B(k-1)%20d%20%5Cspace%20cos(%5Ctheta)%7D%20%20%7B%20c%20%7D


我们讨论单频的电磁波,假设频率为 f,则由于多走的时间,导致的相位偏差为:

2%5Cpi%20f%20%5CDelta%20t%20%3D%20%5Cfrac%7B%202%20%5Cpi%20f(k-1)%20d%20%5Cspace%20cos(%5Ctheta)%7D%20%20%7B%20c%20%7D%20%3D%20%5Cfrac%7B%202%20%5Cpi%20(k-1)%20d%20%5Cspace%20cos(%5Ctheta)%7D%20%7B%5Clambda%7D
其中:

%5Clambda%3D%5Cfrac%7Bc%7D%7Bf%7D


为波长。

我们把

%5Cpsi%20%3D%5Cfrac%7B%202%20%5Cpi%20%20d%20%5Cspace%20cos(%5Ctheta)%7D%20%7B%5Clambda%7D

则 N 个天线,对应的相位偏差分别为:

0%2C%5Cspace%20%20%5Cpsi%20%2C%20%5Cspace%20%202%5Cpsi%2C%5Cspace%20%203%5Cpsi%2C%5Ccdots%2C%5Cspace%20%20(N-1)%5Cpsi


我们是在频域分析的,所以,相当于发射的信号,虽然从每个发射天线出来的信号都是一样的,但是接收端接收到的信号,则分别被乘以:

e%5E%7Bj0%7D%2C%5Cspace%20e%5E%7Bj%20%5Cpsi%7D%2C%5Cspace%20e%5E%7Bj%202%5Cpsi%7D%2C%5Cspace%20e%5E%7Bj%203%5Cpsi%7D%2C%5Ccdots%2C%5Cspace%20e%5E%7Bj%20(N-1)%5Cpsi%7D


则接收到的信号为:

%5Cfrac%7B1%7D%7BN%7D%20%5Csum_%7Bk%3D0%7D%5E%7BN-1%7Ds%20e%5E%7Bjk%5Cpsi%7D%20%3D%20s%20%5Cfrac%7B1%7D%7BN%7D%5Csum_%7Bk%3D0%7D%5E%7BN-1%7D%20e%5E%7Bjk%5Cpsi%7D


注意:上式除以了 N,是能量归一化,不影响分析。

则接收到的信号,相对于发射的信号,其变化为:

%5Cfrac%7B1%7D%7BN%7D%5Csum_%7Bk%3D0%7D%5E%7BN-1%7D%20e%5E%7Bjk%5Cpsi%7D


若仅考虑能量增益,则:

G(%5Cpsi)%20%3D%20%5Cfrac%7B1%7D%7BN%7D%20%20%7C%5Csum_%7Bk%3D0%7D%5E%7BN-1%7D%20e%5E%7Bjk%5Cpsi%7D%7C


经过一些推导(可参考后面的附录),上式整理为:

G(%5Cpsi)%20%3D%20%5Cbegin%7Bcases%7D%0A%5Cbegin%7Bvmatrix%7D%0A%5Cfrac%7Bsin(N%5Cpsi%2F2)%7D%7BNsin(%5Cpsi%2F2)%7D%20%20%0A%5Cend%7Bvmatrix%7D%0A%0A%20%20%20%20%26%20%5Ctext%7B%20if%20%7D%20%5Cpsi%20%5Cneq%200%20%5C%5C%0A%0A1%20%20%26%20%5Ctext%7B%20if%20%7D%20%5Cpsi%20%3D%200%0A%5Cend%7Bcases%7D




%5Cpsi%20%3D%5Cfrac%7B%202%20%5Cpi%20%20d%20%5Cspace%20cos(%5Ctheta)%7D%20%7B%5Clambda%7D
代入后,我们可以计算不同的角度对应不同的增益, 当 %5Cpsi 为 0 时,取最大值,即

%5Ctheta%20%3D%20%5Cfrac%7B%5Cpi%7D%7B2%7D


时取最大。

用 python 程序,在极坐标上画出来的增益曲线如下:

此程序中假设   %5Cfrac%7Bd%7D%7B%5Clambda%7D%3D%5Cfrac%7B1%7D%7B2%7D


第一个图:8个天线排一排


16 个天线排一排


可以看出来,天线多,则越集中。


附录:
%5Cfrac%7B1%7D%7BN%7D%5Csum_%7Bi%3D0%7D%5E%7BN-1%7D%20e%5E%7Bjk%5Cpsi%7D%20%20%5C%5C%0A%3D%5Cfrac%7B1%7D%7BN%7D%5Cfrac%7B1-e%5E%7BjN%5Cpsi%7D%7D%7B1-e%5E%7Bj%5Cpsi%7D%7D%20%5C%5C%0A%3D%20%5Cfrac%7B1%7D%7BN%7D%5Cfrac%7Be%5E%7BjN%5Cpsi%2F2%7D%7D%7Be%5E%7Bj%5Cpsi%2F2%7D%7D%20%20%5Cfrac%7B(e%5E%7B-jN%5Cpsi%2F2%7D-e%5E%7BjN%5Cpsi%2F2%7D)%7D%7B(e%5E%7B-j%5Cpsi%2F2%7D-e%5E%7Bj%5Cpsi%2F2%7D)%7D%20%5C%5C%0A%3D%20%20%5Cfrac%7Be%5E%7BjN%5Cpsi%2F2%7D%7D%7Be%5E%7Bj%5Cpsi%2F2%7D%7D%20%5Cfrac%7Bsin(N%5Cpsi%2F2)%7D%7BNsin(%5Cpsi%2F2)%7D

若只考虑幅度,则上面推导中最后的两个分式中,第一个分式的模是 1,可以忽略。

%5Cbegin%7Bvmatrix%7D%0A%5Cfrac%7B1%7D%7BN%7D%5Csum_%7Bk%3D0%7D%5E%7BN-1%7D%20e%5E%7Bjk%5Cpsi%7D%0A%5Cend%7Bvmatrix%7D%0A%3D%0A%5Cbegin%7Bvmatrix%7D%0A%5Cfrac%7Bsin(N%5Cpsi%2F2)%7D%7BNsin(%5Cpsi%2F2)%7D%20%20%0A%5Cend%7Bvmatrix%7D

波束成形(Beamforming)的数学推导(一)---从发射端看的评论 (共 条)

分享到微博请遵守国家法律