主要内容

数组模式合成第一部分:调零,窗口,变薄

这个例子展示了如何使用相控阵系统工具箱™解决一些阵列综合问题。

在相控阵设计应用程序中,常常需要找到一种锥形元素反应,生成的数组模式满足一定的性能标准。典型的性能标准包括mainlobe位置、零位置(s)和旁瓣水平。

使用旁瓣抵消干扰消除

常见的一种需求当合成光束模式对给定的到达方向指向一个空。这有助于抑制干扰的方向,提高了信号干扰比。并不总是恶意干扰——机场雷达系统可能需要抑制干扰附近的广播电台。在这种情况下,广播电台的位置是已知的和旁瓣抵消算法可以用来消除干扰。

旁瓣取消有助于进入通过数组的旁瓣抑制干扰。在这种情况下,因为干扰方向,算法简单。形成波束指向干扰方向,然后规模梁重量和梁的重量减去重量比例模式,指向任何方向看。这个过程总是地方强势零干扰的方向。

下面的例子展示了如何设计雷达的重量,这样还扫描-30 - 30度之间总是保持一个空在40度。假设雷达使用10-element齿龈,平行于地面,已知的无线电干扰到达方位从40度。

c = 3 e8;%的信号传播速度fc = 1 e9;%信号载波频率λ= c / fc;%的波长thetaad = 30:5:30;%的方向看thetaan = 40;%干扰方向齿龈= phased.ULA(10,λ/ 2);ula.Element。BackBaffled = true;%计算转向为零矢量的方向wn = steervec (getElementPosition(齿龈)/λ,thetaan);%计算注意指导向量的方向wd = steervec (getElementPosition(齿龈)/λ,thetaad);%计算所需的响应在零方向转向rn = wn ' * wd / (wn * wn);%的旁瓣消除器零方向-消除反应w = rn wd-wn *;%的情节模式模式(齿龈、fc 180:180 0“PropagationSpeed”c“类型”,“powerdb”,“CoordinateSystem”,“矩形”,“重量”,w);持有;传说;情节(40 [40]、[0]-100,“r——”,“线宽”40.5,2)文本(5“\ leftarrow干扰方向”,“翻译”,“泰克斯”,“颜色”,“r”,“字形大小”,10)

上图显示了生成的光束模式看方位方向方位-30度到30度,5度增加。下面很明显的放大图,无论看方向,雷达波束模式有很强的零干扰的方向。

%放大xlim(50[30])传说(arrayfun (@ (k) sprintf (“% d度”,thetaad k)“UniformOutput”假),“位置”,“东南”);

使用窗口模式合成功能

另一个常见的问题在设计一个相控阵匹配所需的光束模式规范,交给你。通常,表达的需求是在波束宽度和旁瓣水平。

解决这样一个问题的过程通常包括以下步骤:

  1. 观察所需的模式并决定数组几何;

  2. 根据所需的波束宽度选择数组大小;

  3. 设计蜡烛基于所需的旁瓣水平;

  4. 迭代调整参数获取步骤2和3最佳匹配。

下面的例子说明了这四个步骤。首先,观察所需的模式如下图所示。

负载desiredSynthesizedAntenna;clf;模式(mysteryAntenna、fc、“CoordinateSystem”,“极地”,“类型”,“powerdb”);视图(50、20);甘氨胆酸ax =;斧子。位置= (-0.15 - 0.1 0.9 - 0.8);camva (4.5);坎波斯((520 -250 200));

三维辐射模式展示一些对称性在方位角和仰角削减。因此,模式可能获得最好的使用统一的矩形阵列(URA所言)。很明显从情节,没有能源辐射对数组的后面。

接下来,确定数组的大小。为了避免光栅叶,元素间距设置为半波长。URA所言,尺寸沿方位角和仰角方向可以从所需的波束宽度沿方位角和仰角方向,分别。在半波长间隔的情况下,沿一定方向的元素数量可以近似

$ $ N \ simeq \压裂{2}{\罪(\ theta_b)} $ $

在哪里\ theta_b美元沿着这个方向的波束宽度。因此,孔径的大小的计算

[azpat elpat, az, el] = helperExtractSynthesisPattern (mysteryAntenna, fc, c);%方位方向idx =找到(azpat > pow2db (1/2));azco =[阿兹(idx(1)阿兹(idx(结束))];%方位截止N_col =圆(2 /信德(diff (azco)))%垂直方向idx =找到(elpat > pow2db (1/2));elco = [(idx (1)) el (idx(结束))];%海拔截止N_row =圆(2 /信德(diff (elco)))
N_col = 19 N_row = 14

评估建议开始14 x19 URA所言。

%的形式ura所言=分阶段。([N_row N_col],[λ/ 2λ/ 2]);ura.Element。BackBaffled = true;helperArraySynthesisComparison (ura所言,mysteryAntenna, fc, c)

合成的图中显示超过数组的波束宽度要求所需的模式。然而,旁瓣是远远大于所需的模式。你能通过降低旁瓣窗口操作数组。因为在可以被认为是两个分离的组合均匀线性阵列(ULA)”窗口可以独立设计以及方位角和仰角方向使用熟悉的滤波器设计方法。

下面的代码显示了如何获得方位和仰角方向的窗户。

AzSidelobe = 20;美联社= 0.1;%通带波纹AzWeights = designfilt (“lowpassfir”,“FilterOrder”N_col-1,“CutoffFrequency”90年,azco (2) /“PassbandRipple”,0.1,“StopBandAttenuation”,AzSidelobe);azw = AzWeights.Coefficients;ElSidelobe = 30;ElWeights = designfilt (“lowpassfir”,“FilterOrder”N_row-1,“CutoffFrequency”90年,elco (2) /“PassbandRipple”,0.1,“StopBandAttenuation”,ElSidelobe);elw = ElWeights.Coefficients;%为数组分配权重ura所言。锥形= elw (:) * azw (:)。”;%比较模式helperArraySynthesisComparison (ura所言,mysteryAntenna, fc, c)

图表明,由此产生的低副瓣电平相比之前的设计,但仍不满足要求。通过一些试验和错误,以下参数用于创建最终的设计:

N_row = N_row + 2;%的试验和错误N_col = N_col-3;%的试验和错误AzSidelobe = 26;ElSidelobe = 35;AzWeights = designfilt (“lowpassfir”,“FilterOrder”N_col-1,“CutoffFrequency”90年,azco (2) /“PassbandRipple”,0.1,“StopBandAttenuation”,AzSidelobe);azw = AzWeights.Coefficients;ElWeights = designfilt (“lowpassfir”,“FilterOrder”N_row-1,“CutoffFrequency”90年,elco (2) /“PassbandRipple”,0.1,“StopBandAttenuation”,ElSidelobe);elw = ElWeights.Coefficients;ura所言=分阶段。([N_row N_col],[λ/ 2λ/ 2]);ura.Element。BackBaffled = true;ura所言。锥形= elw (:) * azw (:)。”;helperArraySynthesisComparison (ura所言,mysteryAntenna, fc, c)

图显示的波束宽度和旁瓣水平合成模式匹配所需的规范。以下数据显示所需的3 d模式,合成3 d模式,由此产生的阵列几何,锥度。

helperArraySynthesisComparison (ura所言,mysteryAntenna fc, c,“3 d”)

使用遗传算法数组变薄

许多阵列综合问题可视为优化问题,尤其是对数组与大光圈或复杂的几何图形。在这种情况下,一个封闭形式的解决方案往往不存在和解决方案空间非常大。例如,对于一个大数组,数组常常需要薄控制旁瓣水平,以避免浪费电力送到每个天线元素。在这种情况下,可以打开或关闭一个元素。如果你尝试所有可能的解决方案以400 -元素数组,您需要尝试金宝搏官方网站2美元^ {400}$组合,这是不现实的,一个400 -元素数组不是认为是大光圈。在这种情况下优化技术经常被采用。

遗传算法常用的优化技术。遗传算法实现了最优的解决方案通过模拟自然选择的过程。它始于随机选择候选人的第一代。在每个进化周期,根据预先确定的算法排序一代性能测量(在减少数组的例子中,性能测量将peak-to-sidelobe级别)的比率,然后丢弃的性能较低的分数。然后算法变异剩下的候选人来生成一个新一代重复这个过程,直到它达到停止条件,如几代人的最大数量。

下面的例子展示了如何使用一个遗传算法瘦40 x40 URA所言。目标是达到最大旁瓣抑制方位角和仰角。光束模式显示了完整的数组的第一位。

Nside = 40;geneticArray = phased.URA (Nside,λ/ 2);geneticArray.Element。BackBaffled = true;clf;wplot = helperThinnedArrayComparison (geneticArray, fc, c);

可以计算的旁瓣水平

%计算梁模式[azpat elpat, az, el] = helperExtractSynthesisPattern (geneticArray, fc, c);%计算相对旁瓣水平pks_az = findpeaks (azpat,“NPeaks”2,“SortStr”,“下”);pks_el = findpeaks (elpat,“NPeaks”2,“SortStr”,“下”);%之间找到更小的旁瓣水平两个削减-pks_az sllopt = min (pks_az (1) (2), pks_el (1) -pks_el (2))
sllopt = 13.2981

正如所料,旁瓣水平大约是13分贝。

现在,应用遗传算法。注意在两行和列对称,因此可以利用这个对称,以便每个候选人稀疏系数适用于只有四分之一的数组。这减少了算法的搜索空间。

%设置随机种子拟就= rng (2013);%初始生成与200名候选人。最初,对的元素%是活动中心和伪元素向边缘w0 =双(兰德(Nside / 2, Nside / 2200) > 0.5);w0(一14、一14:)= 1;%选择一个候选人,情节光束模式,计算旁瓣%的水平wtemp = w0 (:: 100);我们= [fliplr (wtemp) wtemp; rot90 (wtemp, 2) flipud (wtemp)];wplot = helperThinnedArrayComparison (geneticArray fc c (wplot沃(:)){“全部”,“初始”});

图显示了一个典型的光束模式导致第一代候选人。在方位方向旁瓣水平较低,但高于垂直方向相对于整个数组。确切的旁瓣水平和数组的填充率计算

[azpat, elpat] = helperExtractSynthesisPattern (geneticArray fc, c,我们(:));%计算相对旁瓣水平pks_az = findpeaks (azpat,“NPeaks”2,“SortStr”,“下”);pks_el = findpeaks (elpat,“NPeaks”2,“SortStr”,“下”);-pks_az sllopt = min (pks_az (1) (2), pks_el (1) -pks_el(2)不仅=总和(我们(:))/ Nside ^ 2 * 100
sllopt不仅= 71.7500 = 8.7013

这意味着71.75%的数组元素(1148人)是活跃的和旁瓣水平大约是9 dB。它需要进一步抑制。下面的代码与30代应用遗传算法。

%最大数量的后代硝石= 30;%每一代的候选人numGene =大小(w0, 3);w = w0;pos = getElementPosition (geneticArray) /λ;angspan = 90:90;m = 1:硝石%计算梁模式为整个一代[azpat, elpat] = helperArraySynthesisBeamPattern (pos angspan w);%计算每个候选的旁瓣电平sll = helperArraySynthesisRelativeSidelobeLevel (azpat elpat);%由此产生的旁瓣电平[~,idx] =排序(sll, 2,“下”);%丢弃一半的一代得到较低的分数w = w (:,: [idx (1: numGene / 2) idx (1: numGene / 2)));%变异在新生成的行和列的候选人mutIdx_row =兰迪(Nside / 2 1 1);mutIdx_col =兰迪(Nside / 2 1 1);w (mutIdx_row:,:, numGene / 2 + 1: numGene) = flipud (w (mutIdx_row:,:, numGene / 2 + 1: numGene));w (mutIdx_col:,:, numGene / 2 + 1: numGene) = fliplr (w (mutIdx_col:,:, numGene / 2 + 1: numGene));结束wopt = w (:,: 1);rng(减压阀);我们= [fliplr (wopt) wopt; rot90 (wopt, 2) flipud (wopt)];wplot = helperThinnedArrayComparison (geneticArray fc c (wplot沃(:)){“全部”,“初始”,“合成”});

sllopt = sll (idx(1))不仅=总和(我们(:))/ Nside ^ 2 * 100
sllopt不仅= 76.5000 = 17.5380

图显示了生成的光束模式。可以看出,旁瓣水平进一步提高到17.5 dB的填充率为76.5%(1224活跃元素)。与第一代候选人相比,它使用5%更积极的元素而实现额外9 dB旁瓣抑制。相比整个数组,结果变薄数组可以节省的成本实现T / R开关后面空元素,进而导致约25%的储蓄消耗功率。还要注意,即使变薄数组使用更少的元素,波束宽度接近可能达到的目标,一个完整的数组。

最后变薄数组与黑色圆圈代表虚拟元素如下所示。

clf;geneticArray。锥形=我们;viewArray (geneticArray“ShowTaper”,真正的);

值得注意的是,遗传算法并不总是落在每个试验相同的解决方案。然而,一般情况下产生的光束模式共享一个相似的旁瓣水平。

上面的脚本显示了一个非常简单的遗传算法应用于阵列综合问题。在真实的应用程序中,遗传算法可能会更复杂。还有其他优化算法用于阵列合成,如模拟退火算法。有兴趣的读者可以找到解决遗传算法和模拟退火算法在全局优化工具箱。

总结

这个例子展示了几种方法来执行数组合成相控阵。在实践中,需要选择合适的合成方法根据应用程序的具体约束,如阵列孔径的大小、阵列几何的形状等。

参考

[1]兰迪·l·Haupt变薄数组使用遗传算法,IEEE天线和传播,42卷,没有1994

[2]兰迪·l·Haupt介绍遗传算法对于电磁学,IEEE天线和传播杂志,第37卷,2号,1995年

[3]哈利·l·范树,最佳阵处理,Wiley-Interscience, 2002年