传感器阵列中的扰动和元件故障建模
这个例子展示了如何在传感器阵列中建模振幅、相位、位置和模式扰动以及元件故障。
振幅微扰
本节展示如何在10个元素的均匀线性阵列(ULA)上添加增益或振幅扰动。考虑这些扰动是统计上独立的零均值高斯随机变量,标准差为0.1。
创建一个包含10个元素的ULA天线。
N = 10;ula =相位。ula (N);
在阵列上创建振幅或增益扰动
Rs = rng(7);pertStDev = 0.1;扰动(齿龈,“TaperMagnitude”,“正常”1、pertStDev);perturbedULA = perturbedArray(ula);
将扰动的响应与理想阵列进行比较。
%叠加响应C = 3e8;Freq = c;次要情节(2,1,1);helperCompareResponses (perturbedULA、齿龈、“振幅微扰”,...{“不安”,“理想”});显示相应的锥度次要情节(2,1,2);茎(perturbedULA.Taper)标题(“振幅蜡烛”),包含(“传感器”); ylabel (“获得”);
相位扰动
本节将展示如何向前一节中使用的ULA天线添加相位扰动。考虑摄动分布类似于前一节。
扰动(齿龈,“TaperMagnitude”,“没有”);扰动(齿龈,“TaperPhase”,“正常”0 pertStDev);perturbedULA = perturbedArray(ula);
将扰动的响应与理想阵列进行比较。
%叠加响应次要情节(2,1,1);helperCompareResponses (perturbedULA、齿龈、相位扰动的,...{“不安”,“理想”});显示相应的锥度次要情节(2,1,2);阀杆(角(perturbedULA.Taper))标题(“阶段蜡烛”),包含(“传感器”); ylabel (“阶段(rad)”);
注意,扰动响应的空值比较浅。
位置扰动
本节将展示如何沿三个轴扰动ULA传感器的位置。
扰动(齿龈,“TaperPhase”,“没有”);扰动(齿龈,“ElementPosition”,“正常”0 pertStDev);perturbedULA = perturbedArray(ula);
将扰动的响应与理想阵列进行比较。
%叠加响应clf;helperCompareResponses (perturbedULA phased.ULA (N),...“位置扰动”, {“不安”,“理想”});
查看数组。
viewArray (perturbedULA);标题(的元素的位置);
模式扰动
本节将用扰动模式替换各向同性天线单元。
首先创建10个自定义天线元素与摄动各向同性模式。
天线= phase . customantennaelement;radpat =天线。magnitudepattern;element = cell(1,N);为i = 1:N perturbedAntenna =克隆(天线);perturbedAntenna。MagnitudePattern =...pow2db (1 + randn(大小(radpat)) * pertStDev);元素{i} = perturbedAntenna;结束
在这里,使用ElementIndices属性将单元格数组“element”中的10个模式映射到10个传感器。
摄动=相控。HeterogeneousULA (“ElementSet”元素,...“ElementIndices”1: N);
将扰动的响应与理想阵列进行比较。
%叠加响应clf;次要情节(2 2 2 [1]);helperCompareResponses (perturbedULA phased.ULA (N),...“模式扰动”,...{“不安”,“理想”});在理想各向同性图案旁边显示扰动图案响应次要情节(2、2、3);模式(齿龈。元素,频率,“CoordinateSystem”,“极地”,“类型”,“权力”)标题(“各向同性模式”);次要情节(2、2、4);模式(元素{1},频率,“CoordinateSystem”,“极地”,“类型”,“权力”)标题(“摄动模式”);
元素失败
本节将模拟8 × 10均匀矩形阵列上的元素故障。每个元素都有10%的失败概率。
创建一个8 × 10元素的URA天线。
Ura =阶段性。(10 [8]);
故障可以通过将相应传感器上的增益设置为0来建模。这里创建了一个矩阵,其中每个元素都有10%的概率为0。
扰动(ura所言,“ElementFailure”,“RandomFail”, 0.1);perturbedURA = perturbedArray(ura);% ura所言。锥度=双(rand(8,10) > .1);
将包含失败元素的数组的响应与理想数组进行比较。
%叠加响应clf;helperCompareResponses (perturbedURA ura所言,“元素失败”,...{“失败”,“没有失败”});
请注意,在包含失败元素的数组的响应中很难获得深度空值。
查看失败的元素。
viewArray (perturbedURA“ShowTaper”,真正的);标题(“失败的元素”);%重置随机种子rng (rs)
总结
这个例子展示了如何模拟不同种类的扰动以及元件失效。它还演示了所有情况下对阵列响应的影响。