相控阵是一个很大的话题,相控阵说得直白一点就是通过控制天线阵列中各个天线的相位来使得波束指向我们想要的方向。现阶段相控阵雷达用得更多的还是军事领域,不过随着技术的进步、成本的下降以及小型化,相控阵雷达也逐渐被用于民用领域了,车载雷达是其落地的应用场景之一。
最近想着基于Ti的级联板实践一下其发射端波束形成(相控阵)的功能,整理一套处理流程和代码。在那之前,想先捋清楚关于发射端波束形成的基本概念,并做仿真实践,于是有的这篇博文。
Blog
20230607 博文第一次撰写
说明
目录
一、关于波束形成
二、仿真实践说明
三、关于线阵的仿真实践
四、关于面阵的仿真实践
五、总结
六、参考资料
七、代码链接
先给波束形成做一个简单的解释:波束形成是指通过控制天线阵列中各个天线(通道)的相位来使得波束指向我们想要的方向。波束形成可以在射频前端做(在发射或者接收端控制天线的相位),也可以在数据处理端做(我们基于DBF\Capon等算法进行测角也是波束形成)。不管是对发射天线、接收天线还是对测角,波束形成的本质都是一样的:给不同的通道设置不同的相位以达到改变波束指向的目的。
基于波束形成的测角,读者可以参考我之前的博文:车载毫米波雷达DOA估计综述_墨@#≯的博客-CSDN博客。本博文讨论发射端的波束形成,或者更为一般化的叫法:相控阵。
首先,在发射端做波束形成(相控阵)是有优势的:时分(TDM)的发射模式下,每个发射天线是分时发射的,也即任意时间下最多只有一个发射天线在发射电磁波,而相控阵下所有的发射天线都在发射电磁波,这种情况下所辐射出去的能量自然会得到增强(相较于TDM,相控阵下可以提高约20*log10(NTx)dB的SNR,NTx是单次同时发射的总的天线个数)。
其次,通过设定不同阵元的相位值,我们可以让波束指向某些我们更感兴趣的区域,使得这些区域的目标检测能力和概率得到提高。
本博文讨论最简单的情况:每个发射天线为各向同性。各向同性是说天线的方向图是一个球形(或者说我们考虑天线布在PCB板上,只考虑其垂直于板子向外的辐射,此时其方向图是一个半球形)。(不过阵列的主波束指向什么位置主要还是取决于各个阵元的相位和相对位置,与各阵元的方向图没有关系)。
我们去求解阵列的方向图(波束指向),或者从需求的波束指向角度出发去求解每个阵元的相位,其背后的原理其实很简单:试想当发射天线都往外辐射电磁波时,这些电磁波必然会在空间中叠加,我们去求解阵列的波束指向,本质上就是基于各个阵元所辐射电磁波的初始相位、幅值、以及它们之间的相对位置关系来求得各个方向下电磁波叠加后的结果(对应下文公式中的AE)。
我们以线阵的第一个阵元(或面阵的某个顶角的阵元)作为参考基准,求解阵列的方向图。所用的阵列示意图与坐标系参考如下(对于线阵,取面阵的一行阵元即可):
图1.1 阵列坐标系示意图
图中θ为与阵列法向的水平向夹角,φ为与水平面的夹角。
对于N阵元线阵:
(1-1)
式中,为第n个阵元辐射电磁波的幅值(对于各向同性的辐射来说,朝各个方向辐射的电磁波幅值一致),δn为该阵元辐射电磁波的初始相位,D为相对于参考阵元的间隔,θ为往外辐射时水平方向的角度,λ为载波波长。对于线阵,因为阵元是全向辐射的,所以在相对阵列的不同俯仰向下其辐射方向图是一样的。
对于N*M阵元面阵:
式中,Dn为列向第n个阵元相对参考阵元的距离,Dm为行向第m个阵元相对参考阵元的距离。
关于波束指向的问题,对应到上述两式,就是要设置各阵元的初始相位δ。相位值的设置需要基于所需的指向角来得到导向矢量,以均匀线阵为例:
图1.2 线性阵列导向矢量求解示意图
假定要使得波束指向θ方向,那么就要使每个阵元所发射的电磁波于远场下在该方向平行。假设以第一个阵元为基准,其初始相位为0,对于后续的阵元,在θ方向上,电磁波需要多走:D1、D2、D3 … 的路程,不难理解的是,
(1-3)
该路程反映到相位上就是:
(1-4)
我们可以通过设置每个阵元的初始相位来达到弥补路程差的目的,此时应该设置各个阵元的初始相位值为:
上式也就是通常所说的导向矢量。
对于面阵,每个阵元的初始相位值的推导与线阵类似,如果想要使得阵列的波束指向(θ,φ),则阵列中的第(n,m)个阵元的初始相位值应该设置成:
关于上式各变量的解释可以参考式(1-2)的说明。
在前文几个公式的指导下,本博文将分别仿真线阵和面阵两种情况下波束形成的结果。
线阵采用间隔0.5个波长的10阵元均匀阵,面阵采用两个方向都间隔0.5个波长的由100个阵元组成的矩形面阵,如果读者想更改阵元间隔、阵元数目这些参数,可以在所提供的代码中很方便地进行更改。
仿真中各阵元均为各向同性辐射,读者也可以给各阵元在不同的方向上赋不同的值,来看看非各向同性的阵元辐射下合成后的阵列波束方向图是什么样的,(各阵元的方向图可以使用天线的仿真数据结果)。
后文仿真结果中的三维图为了更直观的展示,我把阵列的位置从图1.1中的xoz面转移到了xoy面。
对波束指向0°和30°分别进行了仿真,直接贴仿真的结果吧:
图3.1 阵列波束指向0°时的仿真结果(3D)
图3.2 阵列波束指向0°时的仿真结果
(其中一个俯仰向的切片)
图3.3 阵列波束指向0°时的仿真结果
(极坐标下的视角,其中一个俯仰向的切片)
图3.4 阵列波束指向-30°时的仿真结果(3D)
图3.5 阵列波束指向-30°时的仿真结果
(其中一个俯仰向的切片)
图3.6 阵列波束指向-30°时的仿真结果
(极坐标下的视角,其中一个俯仰向的切片)
仿真的结果与理论预测吻合良好。
将波束指向分别设置了(0,0)和(30,-30)两组,仿真结果如下(分别从以角度为横纵坐标以及放在xyz坐标系中观察):
图4.1 阵列波束图1(0°, 0°)
图4.2 阵列波束图2(0°, 0°)
图4.3 阵列波束图1(30°, -30°)
图4.4 阵列波束图2(30°, -30°)
图4.5 阵列波束图3(30°, -30°),俯视图
仿真的结果与理论预测吻合良好。
本博文探讨发射端波束形成(相控阵)的问题,阐述了关于波束形成的概念、原理、求解阵列方向图的方法、以及将阵列波束指向某个角度的方法,文中分别以线阵和面阵为分析对象,仿真实践了这两种阵列的波束方向图。
本博文作为后续基于Ti级联板进行相控阵实践的铺垫,内容不算太多。后续如果有更深入的探讨我会补充和更新本博文。
参考资料1: Jonah Gamba 《Radar signal Processing for Autonomous Driving》 书本第一章内容。
关于阵列发射端的波束形成(相控阵)研究与仿真实践博文相对应的代码资源-CSDN文库