主要内容

相控阵画廊

这个例子展示了如何用相控阵系统工具箱™建模和可视化各种天线阵列几何。这些几何图形也可以用来模拟其他类型的阵列,如水听器阵列和麦克风阵列。您可以查看每个图的代码,并在您自己的项目中使用它。

线性阵列

线性天线阵列可以在元件之间具有均匀或不均匀的间隔。该最常见的线性天线阵列是均匀的线性阵列(ULA)。

N = 20;%元素个数D = 0.5;元素间距(m)齿龈= phased.ULA (N、D);viewArray(齿龈,“标题”统一线性阵列(ULA)甘氨胆酸)组(,“CameraViewAngle”, 4.4);

最小冗余线性阵列(MRLA)是非均匀间隔线性阵列的一个例子。MRLA最小化了具有相同空间相关延迟的元素对的数量。可以设计出孔径相当于7元ULA的四元阵列。

N = 4;%元素个数pos = 0 (N);Pos(2,赋值)= [-1.5 -1 0.5 1.5];%孔径相当于7单元ULAmrla =分阶段。ConformalArray (“ElementPosition”、pos、...“ElementNormal”0 (2 N));viewArray (mrla“标题”最小冗余线性阵列(MRLA)甘氨胆酸)组(,“CameraViewAngle”, 4.85);

圆形阵列

圆形天线阵列单元之间的间距也可以是均匀的或不均匀的。下面是统一圆形阵列(UCA)的一个示例。

N = 24;%元素个数R = 1;%半径(米)uca = phased.UCA (N, R);viewArray (uca“ShowNormals”,真的,“标题”统一圆形阵列(UCA))视图(0,90)

具有相同单元数和不同半径的多个圆形天线阵列形成一个同心圆形阵列。

N = 16;%每个环上的元素个数R = [1 1.5 2];%半径(米)azang = (0: n - 1) * 360 / n - 180;pos = [0 (1, N); cosd (azang);信德(azang)];elNormal = 0 (2 N);concentricCircularArray =分阶段。ConformalArray (...“ElementPosition”,[R(1)* POS R(2)* POS R(3)* POS],...“ElementNormal”,[Elnormal Elnormal ElnorMal]);ViewArray(ConcentricCirculararray,“标题”“同心圆形阵列”);

平面阵列与矩形网格

平面天线阵列可以有一个均匀的网格(或晶格)和不同的边界形状。接下来是一个带有矩形网格和矩形边界的统一矩形阵列(URA)的例子。

M = 18;%每行元素的个数N = 16;%每列上的元素个数dy = 0.5;%每行元素之间的间距(m)dz = 0.5;%各列元素之间的间距(m)ura所言=分阶段。(N [M], [dz dy]);viewArray (ura所言,“标题”“统一矩形阵列(市建局)”);

您也可以建模一个平面天线阵列的圆形边界。下面的代码以一个URA开始,并删除圆圈外的元素。

N = 20;%矩形数组中每行/列上的元素个数dy = 0.5;%每行元素之间的间距(m)dz = 0.5;%各列元素之间的间距(m)R = 4.5;%半径(米)refArray = phased.URA (N, [dy, dz]);pos = getElementPosition (refArray);elemToRemove =总和(pos。^ 2)> R ^ 2;pos (:, elemToRemove) = [];%排除圆圈外的元素circularPlanarArray =分阶段。ConformalArray (“ElementPosition”、pos、...“ElementNormal”0(2、大小(pos, 2)));ViewArray(CircularPlanarArray,“标题”圆形平面阵列的);

下面是一个具有椭圆边界的平面天线阵的例子。

N = 20;%矩形数组中每行/列上的元素个数dy = 0.5;%每行元素之间的间距(m)dz = 0.5;%各列元素之间的间距(m)Ry = 4.5;主要半径(m)Rz = 2.8;%次要半径(m)refArray = phased.URA (N, [dy, dz]);pos = getElementPosition (refArray);Elemtoremove =(POS(2,:)/ RY)。^ 2+(POS(3,:)/ RZ)。^ 2> 1;pos (:, elemToRemove) = [];%排除椭圆外的元素ellipticalPlanarArray =分阶段。ConformalArray (“ElementPosition”、pos、...“ElementNormal”0(2、大小(pos, 2)));viewArray (ellipticalPlanarArray“标题”“椭圆平面阵”);

下一个例子是带有矩形网格的六边形阵列。

Nmin = 7;%底部行元素的数量Nmax = 19;最宽行上的元素个数dy = 0.5;%的行间距dz = 0.5;%列间距rows = [Nmin:2:Nmax -2:-2:Nmin];N =总和(行);%元素总数停止= cumsum(行);开始= stop-rows + 1;pos = 0 (N);数= 0;2:Nmax-Nmin count = count+1;idx =启动(计数):停止(数);idx pos(2) =(-(行(计数)1)/ 2:(行(count) 1) / 2) * dy;idx pos (3) = m / 2 * dz;结束hexagonalPlanarArray =分阶段。ConformalArray (“ElementPosition”、pos、...“ElementNormal”0 (2 N));viewArray (hexagonalPlanarArray...“标题”“带矩形网格的六边形平面阵列”);

平面阵列与三角形网格

三角网格是一种高效的空间采样方法,在实际应用中得到了广泛的应用。同样,可以应用不同的边界几何。首先是一个带有三角形晶格的矩形阵列。

M = 18;%每行元素的个数N = 16;%每列上的元素个数dy = 0.5;%每行元素之间的间距(m)dz = 0.5;%各列元素之间的间距(m)rectArrayTriGrid =分阶段。(N [M], [dz dy],“格子”“三角”);viewArray (rectArrayTriGrid...“标题”“三角形网格的矩形阵列”);

接下来是一个三角形栅格的圆形平面天线阵列。

N = 18;%矩形数组中每行/列上的元素个数dy = 0.5;%每行元素之间的间距(m)dz = 0.5;%各列元素之间的间距(m)R = 4.5;%半径(米)Refarray = phased.ura(n,[dy,dz],“格子”“三角”);pos = getElementPosition (refArray);elemToRemove =总和(pos。^ 2)> R ^ 2;pos (:, elemToRemove) = [];%排除圆圈外的元素circularPlanarArrayTriGrid =分阶段。ConformalArray (...“ElementPosition”、pos、“ElementNormal”0(2、大小(pos, 2)));viewArray (circularPlanarArrayTriGrid...“标题”“三角形网格的圆形平面阵列”);

接下来是一个三角形网格的椭圆平面天线阵列。

N = 18;%矩形数组中每行/列上的元素个数dy = 0.5;%每行元素之间的间距(m)dz = 0.5;%各列元素之间的间距(m)Ry = 4.5;主要半径(m)Rz = 2.8;%次要半径(m)Refarray = phased.ura(n,[dy,dz],“格子”“三角”);pos = getElementPosition (refArray);Elemtoremove =(POS(2,:)/ RY)。^ 2+(POS(3,:)/ RZ)。^ 2> 1;pos (:, elemToRemove) = [];%排除椭圆外的元素ellipticalPlanarArrayTriGrid =...分阶段。ConformalArray (“ElementPosition”、pos、...“ElementNormal”0(2、大小(pos, 2)));viewArray (ellipticalPlanarArrayTriGrid...“标题”“三角形网格椭圆平面阵列”);

接下来是一个均匀六边形阵列(UHA)的例子。

Nmin = 9;%底部行元素的数量nmax = 17;%在中间行元素的数量dy = 0.5;%的行间距dz = 0.5 * sin(π/ 3);%列间距rows = [Nmin:Nmax -1:-1:Nmin];N =总和(行);%元素总数停止= cumsum(行);开始= stop-rows + 1;pos = 0 (N);数= 0;m = nmin-nmax:nmax-nmin count = count + 1;idx =启动(计数):停止(数);idx pos(2) =(-(行(计数)1)/ 2:(行(count) 1) / 2) * dy;POS(3,IDX)= M * DZ;结束uha =分阶段。ConformalArray (“ElementPosition”、pos、...“ElementNormal”0 (2 N));viewArray (uha“标题”均匀六边形阵列(UHA));

变薄的数组

你也可以用非均匀网格模拟平面天线阵列。接下来是一个细天线阵列的例子。

M = 19;%每行元素的个数N = 17;%每列上的元素个数dy = 0.5;%每行元素之间的间距(m)dz = 0.5;%各列元素之间的间距(m)refArray =分阶段。(N [M], [dz dy]);pos = getElementPosition (refArray);elemToRemove = [3:11: M * (N - 1) / 2 M * N - 3: -11: (N + 1) / 2);pos (:, elemToRemove) = [];thinnedURA =分阶段。ConformalArray (“ElementPosition”、pos、...“ElementNormal”0(2、大小(pos, 2)));ViewArray(Thinnedura,“标题”“变薄数组”);

半球形共形阵列

您还可以为非平面阵列建模。在许多应用中,传感器必须符合它们所安装的曲面的形状。接下来是其单元均匀分布在一个半球上的天线阵列的例子。

r = 2;%半径(米)阿兹= 90:10:90;%方位角度el = 80:10:80;%仰角(不包括极点)[az_grid, el_grid] = meshgrid(az,el);极点= [0 0;-90 90);%添加南极和北极nDir =[极点[az_grid(:) el_grid(:)]'];元素法线方向N =大小(nDir 2);%元素个数[x, y, z] = sph2cart (degtorad (nDir (1,:)), degtorad (nDir (2:)), R * 1 (1, N));hemisphericalConformalArray =分阶段。ConformalArray (...“ElementPosition”[x;y;z),“ElementNormal”(nDir);viewArray (hemisphericalConformalArray...“标题”半球形共形阵列的);查看(90,0)

子串

您可以对子数组进行建模和可视化。接下来是一个连续子数组的示例。

replicatedURA =分阶段。ReplicatedSubarray (“子数组”phased.URA (5)...“布局”“矩形”...“GridSize”3 [3],“GridSpacing”“汽车”);viewArray (replicatedURA“标题”3x3个子数组,每个有5x5个元素);

您可以在非均匀网格上布置子数组。下一个例子模拟了一个子阵列的T/R模块的故障。

Ns = 6;%子数组的个数posc = 0 (Ns);: posc (2) = 5:2.5:7.5;%子阵列阶段中心posc (:, 3) = [];%取出第3个子阵段以模拟T / R失败defectiveSubarray =分阶段。ReplicatedSubarray (...“子数组”,分阶段。(25 [5]),...“布局”“自定义”...“SubarrayPosition”posc,...“SubarrayNormal”0 (Ns-1));viewArray (defectiveSubarray“标题”“有缺陷的子数组”);查看(90,0)

子阵列可以交错和重叠,以减轻光栅波瓣。

N = 40;%元素个数Ns = 8;%子数组的个数Sel = Zeros(ns,n);nsec = n / ns;m = 1: Ns如果m==1 sel(m,(m-1)*Nsec+1) =1;elseifm==Ns sel(m,(m-1)*Nsec) = 1;其他的(m - 1) * Nsec选取(m: m * Nsec + 1) = 1;结束结束overlappedSubarray =分阶段。PartitionedArray (“数组”phased.ULA (N),...“SubarraySelection”、选取);viewArray (overlappedSubarray“标题”“重叠子阵”);集(gca),“CameraViewAngle”, 4.65);

在某些空间约束应用程序中,例如在卫星上,多个天线阵列必须共享相同的空间。元素组是交错的,隔行扫描或穿插。下一个示例模型交错的非重叠子阵列。

N = 20;idx =重塑(randperm N * N, N, N);选取= 0 (N, N * N);i =1:N, sel(i,idx(i,:)) =1;结束interleavedArray =分阶段。PartitionedArray (“数组”phased.URA (N),...“SubarraySelection”,sel);ViewArray(InterleavedArray,“标题”交错数组的);

另一种非平面天线阵列是具有多个平面面的阵列。下一个例子展示了均匀的六边形阵列作为子阵列排列在一个球体上。

R = 9;%半径(米)阿兹= unigrid(-180、60180、“()”);%方位角度el = unigrid(-30、60、30);%仰角(不包括极点)[az_grid, el_grid] = meshgrid(az,el);极点= [0 0;-90 90);%添加南极和北极nDir =[极点[az_grid(:) el_grid(:)]'];%子数组法向N =大小(nDir 2);%子数组的个数[x, y, z] = sph2cart (degtorad (nDir (1,:)), degtorad (nDir (2:)), R * 1 (1, N));sphericalHexagonalSubarray =分阶段。ReplicatedSubarray (“子数组”uha,...“布局”“自定义”...“SubarrayPosition”[x;y;z),...“SubarrayNormal”(nDir);viewArray (sphericalHexagonalSubarray...“标题”“球面上的六角形子阵列”);视图(30,0)

您还可以从不同的角度查看数组,并以3d方式交互地旋转它。

rotate3d视图(0,90)