主要内容

相控阵图库

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

线性阵列

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

N = 20;元素数量%D = 0.5;%元素间距(m)ula = phase . ula (N,D);viewArray(齿龈,“标题”“均匀线性阵列(ULA)”甘氨胆酸)组(,“CameraViewAngle”, 4.4);

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

N = 4;元素数量%pos = 0 (3,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;%半径(m)uca =相。uca (N,R);viewArray (uca“ShowNormals”,真的,“标题”统一圆形阵列(UCA))视图(0,90)

多个相同单元数、不同半径的圆形天线阵列构成同心圆阵列。

N = 16;%每个环上元素的数量R = [1 1.5 2];%半径(m)azang = (0:N-1)*360/N-180;pos = [0 (1,N);cosd(azang);sind(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 =阶段性。URA([N M],[dz dy]);viewArray (ura所言,“标题”“均匀矩形阵列”);

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

N = 20;矩形数组中每行/列上的元素数量%Dy = 0.5;每行元素间距% (m)Dz = 0.5;每列元素间距% (m)R = 4.5;%半径(m)refArray = phase . ura (N,[dy,dz]);pos = getElementPosition(refArray);elemToRemove = sum(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 = phase . ura (N,[dy,dz]);pos = getElementPosition(refArray);elemToRemove = (pos)(2:) /变化。^ 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 = sum(rows);元素总数的%Stop = cumsum(rows);Start = stop-rows+1;pos = 0 (3,N);计数= 0;m = Nmin-Nmax:2:Nmax-Nmin count = count+1;Idx = start(count):stop(count);idx pos(2) =(-(行(计数)1)/ 2:(行(count) 1) / 2) * dy;Pos (3,idx) = 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 =相控。URA([N M],[dz dy],“格子”“三角”);viewArray (rectArrayTriGrid“标题”“三角形网格矩形阵列”);

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

N = 18;矩形数组中每行/列上的元素数量%Dy = 0.5;每行元素间距% (m)Dz = 0.5;每列元素间距% (m)R = 4.5;%半径(m)refArray =分阶段。(N, dy, dz,“格子”“三角”);pos = getElementPosition(refArray);elemToRemove = sum(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 =分阶段。(N, dy, dz,“格子”“三角”);pos = getElementPosition(refArray);elemToRemove = (pos)(2:) /变化。^ 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(pi/3);列间距%rows = [Nmin:Nmax -1:-1:Nmin];N = sum(rows);元素总数的%Stop = cumsum(rows);Start = stop-rows+1;pos = 0 (3,N);计数= 0;m = Nmin-Nmax:Nmax-Nmin count = count+1;Idx = start(count):stop(count);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 =分阶段。URA([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;%半径(m)Az = -90:10:90;%方位角El = -80:10:80;%仰角(不含极点)[az_grid, el_grid] = meshgrid(az,el);极点= [0 0;-90 90);加上南极和北极nDir =[极点[az_grid(:) el_grid(:)]'];%元素法线方向N = size(nDir,2);元素数量%[x, y, z] = sph2cart (degtorad (nDir (1,:)), degtorad (nDir (2:)), R * 1 (1, N));hemisphere phericalconformalarray =相控。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 (3,Ns);Posc (2,:) = -5:2.5:7.;子阵列相位中心Posc (:,3) = [];取出第三个子数组来模拟T/R故障defectiveSubarray =相控。ReplicatedSubarray (“子数组”,分阶段。(25 [5]),“布局”“自定义”“SubarrayPosition”posc,“SubarrayNormal”0 (Ns-1));viewArray (defectiveSubarray“标题”“有缺陷的子数组”);视图(90 0)

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

N = 40;元素数量%Ns = 8;%子数组个数sel = 0 (N,N);Nsec = N/Ns;m = 1: n如果m==1 sel(m,(m-1)*Nsec+1:m*Nsec+1) =1;elseifm==Ns sel(m,(m-1)*Nsec:m*Nsec) = 1;其他的sel(m,(m-1)*Nsec: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”、选取);viewArray (interleavedArray“标题”交错数组的);

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

R = 9;%半径(m)Az = unigrid(-180,60,180,“()”);%方位角El = unigrid(-30,60,30);%仰角(不含极点)[az_grid, el_grid] = meshgrid(az,el);极点= [0 0;-90 90);加上南极和北极nDir =[极点[az_grid(:) el_grid(:)]'];子数组法线方向N = size(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)

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

rotate3d视图(0,90)