pilotcalib
阵列校准使用试点来源
语法
描述
例子
使用试点校准估计齿龈元素位置
构造一个7-element齿龈间距为1/2波长各向同性天线的阵列元素。假设阵列是在三维空间中几何摄动。对数组使用4飞行员执行试点校准源的方位角和高度角(-60,0)、(-40)、(40,0)、(45 120)度。校准过程,试验信号的信噪比30 dB。每个控制信号包含10000个样本。假设有一个600 MHz的频率的信号。
与标称参数设置齿龈
fc = 600 e6;c = physconst (“光速”);林= c / fc;d = 0.5 *林;输出= phased.IsotropicAntennaElement (“FrequencyRange”[100900]* 1 e6);Nelem = 7;Nelem NominalTaper = 1 (1);苏拉= phased.ULA (“元素”的输出,“NumElements”Nelem,“ElementSpacing”d…“锥”,NominalTaper);
创建试点信号
高斯分布随机扰乱元素位置拥有0.1波长标准偏差。不扰乱第一个元素的位置或蜡烛。
posstd = 0.1;rng默认的NominalElementPositions = getElementPosition(苏拉)/林;ReferenceElement = NominalElementPositions (: 1);PositionPert = [0 (3,1), posstd * randn (Nelem-1)];ActualElementPositions = NominalElementPositions + PositionPert;ActualTaper = NominalTaper;
生成的信号使用的实际位置和蜡烛。
Nsamp = 10000;ncov = 0.001;PilotAng = [-60、40120;0 -40 0,45];Npilot =大小(PilotAng, 2);为n = 1: Npilot X (:,:, n) = sensorsig (ActualElementPositions,…Nsamp PilotAng (:, n), ncov,“锥”,ActualTaper。');结束
执行试验校准
estpos = pilotcalib (NominalElementPositions - ReferenceElement * (1, Nelem),…X, PilotAng);
添加参考传感器的位置。
estpos = estpos + NominalElementPositions (: 1) * 1 (1, Nelem);
检查的根均方误差(RMS)校准参数
计算初始位置误差的均方根值。
numpos = 3 * Nelem;initposRMSE =√总和PositionPert (:)。^ 2) / numpos);
计算校准位置误差的均方根值。
solvposErr = ActualElementPositions - estpos;solvposRMSE =√总和solvposErr (:)。^ 2) / (numpos));
比较初始位置的校准RMS位置误差均方根误差。校准降低了RMS位置误差。
disp (solvposRMSE / initposRMSE)
2.3493 e-04
估计齿龈元素位置和锥形错误使用试点校准
构造一个7-element齿龈间距为1/2波长各向同性天线的阵列元素。假设阵列是在三维空间中几何摄动。对数组使用4飞行员执行试点校准源的方位角和高度角(-60,0)、(80)、(-40)和(-80 0)度。校准过程,试验信号的信噪比30 dB。每个控制信号包含10000个样本。假设有一个600 MHz的频率的信号。
与标称参数设置齿龈
fc = 600 e6;c = physconst (“光速”);林= c / fc;d = 0.5 *林;输出= phased.IsotropicAntennaElement (“FrequencyRange”[100900]* 1 e6);Nelem = 7;Nelem NominalTaper = 1 (1);苏拉= phased.ULA (“元素”的输出,“NumElements”Nelem,“ElementSpacing”d…“锥”,NominalTaper);
创建试点信号
使用高斯分布随机扰乱元素位置,标准偏差为0.1波长。不扰乱第一个元素的位置。
posstd = 0.1;rng默认的NominalElementPositions = getElementPosition(苏拉)/林;ReferenceElement = NominalElementPositions (: 1);PositionPert = [0 (3,1), posstd * randn (Nelem-1)];ActualElementPositions = NominalElementPositions + PositionPert;
扰乱的锥度大小和相位。不扰乱第一锥形。
tapermagstd = 0.15;taperphasestd = 0.15;tapermagpert = tapermagstd * [0;randn (Nelem-1 1)];ActualTaper = NominalTaper ' + tapermagpert;taperphasepert = taperphasestd * [0; randn (Nelem-1 1)];ActualTaper = ActualTaper。* exp (1 * taperphasepert);
生成的信号使用摄动位置,蜡烛和四个试点来源。
Nsamp = 10000;ncov = 0.001;PilotAng =[-60年10,-80;10、80、-40、0];Npilot =大小(PilotAng, 2);为n = 1: Npilot X (:,:, n) = sensorsig (ActualElementPositions Nsamp,…,ncov PilotAng (:, n),“锥”,ActualTaper);结束
执行试验校准
[estpos, esttaper] = pilotcalib (…NominalElementPositions - ReferenceElement * (1, Nelem),…X, PilotAng);
添加参考传感器的位置。
estpos = estpos + NominalElementPositions (: 1) * 1 (1, Nelem);
检查的均方根(RMS)误差校准参数
计算初始锥扰动量的有效值。
tapermagpertRMSE =√tapermagpert‘* tapermagpert / Nelem);taperphasepertRMSE =√taperphasepert‘* taperphasepert / Nelem);
计算的RMS值校准锥度大小错误。
diff = abs (ActualTaper) - abs (esttaper);diff2 = diff ' *差异;tapermagsolvRMSE =√diff2 / Nelem);
比较校准均方根误差大小初始RMS级错误。校准降低了RMS误差大小。
disp (tapermagsolvRMSE / tapermagpertRMSE)
6.7715 e-04
计算锥相位误差的均方根值校准。
diff =打开(角(ActualTaper)——角(esttaper));diff2 = diff ' *差异;tapersolvphaseRMSE =√diff2 / Nelem);
比较校准RMS相位误差和初始RMS相位误差。校准降低了RMS相位误差。
disp (tapersolvphaseRMSE / taperphasepertRMSE)
0.0021
%计算初始位置误差的均方根值。numpos = 3 * Nelem;initposRMSE =√总和PositionPert (:)。^ 2) / numpos);
计算校准位置误差的均方根值。
solvposErr = ActualElementPositions - estpos;solvposRMSE =√总和solvposErr (:)。^ 2) / (numpos));
比较初始位置的校准RMS位置误差均方根误差。校准降低了RMS位置误差。
disp (solvposRMSE / initposRMSE)
3.6308 e-04
使用试点校准估计URA所言元素位置错误
建立一个实验室URA所言的各向同性天线间距为1/2波长的元素。假设阵列几何扰动在四面八方,除了第一个元素。对数组使用5飞行员执行试点校准源的方位角和高度角(-60,0)、(-40)、(40,0)、(120年,45),(170年,50)度。校准过程,试验信号的信噪比30 dB。每个控制信号包含10000个样本。假设有一个600 MHz的频率的信号。
创建数组
为了方便起见,使用phased.URA
系统对象™设置名义位置和锥度值。
fc = 300 e6;c = physconst (“光速”);林= c / fc;d = 0.5 *林;输出= phased.IsotropicAntennaElement (“FrequencyRange”[100900]* 1 e6);苏拉= phased.URA (“元素”的输出,“大小”,3,3,…“ElementSpacing”d“锥”的(3));Nelem = getNumElements(苏拉);锥形= getTaper(苏拉);
创建试点信号
使用高斯分布随机扰乱元素位置,标准偏差为0.1波长。不扰乱第一个元素的位置。
posstd = 0.1;rng默认的NominalElementPositions = getElementPosition(苏拉)/林;ReferenceElement = NominalElementPositions (: 1);PositionPert = [0 (3,1), posstd * randn (Nelem-1)];ActualElementPositions = NominalElementPositions + PositionPert;
扰乱的锥度大小和相位。不扰乱第一锥形。
NominalTaper = getTaper(苏拉);tapermagstd = 0.1;taperphasestd = 0.1;tapermagpert = tapermagstd * [0;randn (Nelem-1 1)];ActualTaper = NominalTaper + tapermagpert;taperphasepert = taperphasestd * [0; randn (Nelem-1 1)];ActualTaper = ActualTaper。* exp (1 * taperphasepert);
生成飞行员使用摄动信号位置和蜡烛。
Nsamp = 10000;ncov = 0.001;PilotAng = [-60、40120170;0 -40 0,45岁,50);Npilot =大小(PilotAng, 2);为n = 1: Npilot X (:,:, n) = sensorsig (ActualElementPositions Nsamp,…ncov PilotAng (:, n),“锥”,ActualTaper);结束
执行试验校准
[estpos, esttaper] = pilotcalib (NominalElementPositions - ReferenceElement * (1, Nelem),…X PilotAng NominalTaper);
添加参考传感器的位置。
estpos = estpos + NominalElementPositions (: 1) * 1 (1, Nelem);
检查的均方根(RMS)误差校准参数
计算初始锥扰动量的有效值与量的有效值校准参数。
tapermagpertRMSE =√tapermagpert‘* tapermagpert / Nelem);taperphasepertRMSE =√taperphasepert‘* taperphasepert / Nelem);
计算的RMS值校准锥度大小错误。
diff = abs (ActualTaper) - abs (esttaper);diff2 = diff ' *差异;tapermagsolvRMSE =√diff2 / Nelem);
比较校准初始均方根误差均方根误差大小。校准降低了RMS误差大小。
disp (tapermagsolvRMSE / tapermagpertRMSE)
0.0014
计算锥相位误差的均方根值校准。
diff =打开(角(ActualTaper)——角(esttaper));diff2 = diff ' *差异;tapersolvphaseRMSE =√diff2 / Nelem);
比较校准RMS相位误差和初始均方根误差。校准降低了RMS相位误差。
disp (tapersolvphaseRMSE / taperphasepertRMSE)
0.0015
计算初始位置误差的均方根值。
numpos = 3 * Nelem;initposRMSE =√总和PositionPert (:)。^ 2) / numpos);
计算校准位置误差的均方根值。
solvposErr = ActualElementPositions - estpos;solvposRMSE =√总和solvposErr (:)。^ 2) / (numpos));
比较校准RMS位置误差均方根误差初始位置。校准降低了RMS位置误差。
disp (solvposRMSE / initposRMSE)
7.1582 e-04
估计选齿龈使用试点校准参数
构造一个6-element齿龈的各向同性天线间距为1/2波长的元素。假设阵列几何的摄动x - y飞机,包含一个未知的圆锥误差。对数组使用四个试点执行试点校准源的方位角和高度角(-60,0)、(-40)、(40,0),120年,45度。校准过程,试验信号的信噪比30 dB。每个控制信号包含10000个样本。假设有一个600 MHz的频率的信号。
与标称参数设置齿龈
fc = 600 e6;c = physconst (“光速”);林= c / fc;d = 0.5 *林;输出= phased.IsotropicAntennaElement (“FrequencyRange”[100900]* 1 e6);Nelem = 6;Nelem NominalTaper = 1 (1);苏拉= phased.ULA (“元素”的输出,“NumElements”Nelem,“ElementSpacing”d…“锥”,NominalTaper);
创建试点信号
使用高斯分布随机扰乱元素位置,标准偏差为0.13波长。不扰乱第一个元素的位置。
posstd = 0.13;rng默认的NominalElementPositions = getElementPosition(苏拉)/林;ReferenceElement = NominalElementPositions (: 1);PositionPert = [0 (3,1), posstd * randn (Nelem-1)];ActualElementPositions = NominalElementPositions + PositionPert;
扰乱的锥度大小和相位。不扰乱第一锥形。
tapermagstd = 0.15;taperphasestd = 0.15;tapermagpert = tapermagstd * [0;randn (Nelem-1 1)];ActualTaper = NominalTaper ' + tapermagpert;taperphasepert = taperphasestd * [0; randn (Nelem-1 1)];ActualTaper = ActualTaper。* exp (1 * taperphasepert);
生成的信号使用摄动位置和蜡烛。
Nsamp = 10000;ncov = 0.001;PilotAng = [-60、40120;0 -40 0,45];Npilot =大小(PilotAng, 2);为n = 1: Npilot X (:,:, n) = sensorsig (ActualElementPositions Nsamp,…ncov PilotAng (:, n),“锥”,ActualTaper);结束
执行试验校准
关掉锥形权重估计。
[estpos, esttaper] = pilotcalib (NominalElementPositions - ReferenceElement * (1, Nelem),…X PilotAng NominalTaper。”, [1, 1, 1, 0] ');
添加参考传感器的位置。
estpos = estpos + NominalElementPositions (: 1) * 1 (1, Nelem);
检查的均方根(RMS)误差校准参数
计算初始锥扰动量的有效值与量的有效值校准参数。
tapermagpertRMSE =√tapermagpert‘* tapermagpert / Nelem);taperphasepertRMSE =√taperphasepert‘* taperphasepert / Nelem);
计算的RMS值校准锥度大小错误。
diff = abs (ActualTaper) - abs (esttaper);diff2 = diff ' *差异;tapermagsolvRMSE =√diff2 / Nelem);
比较校准初始均方根误差均方根误差大小。校准降低了RMS误差大小。
disp (tapermagsolvRMSE / tapermagpertRMSE)
1.0000
计算锥相位误差的均方根值校准。
diff =打开(角(ActualTaper)——角(esttaper));diff2 = diff ' *差异;tapersolvphaseRMSE =√diff2 / Nelem);
比较校准RMS相位误差和初始均方根误差。校准降低了RMS相位误差。
disp (tapersolvphaseRMSE / taperphasepertRMSE)
1
计算初始位置误差的均方根值。
numpos = 3 * Nelem;initposRMSE =√总和PositionPert (:)。^ 2) / numpos);
计算校准位置误差的均方根值。
solvposErr = ActualElementPositions - estpos;solvposRMSE =√总和solvposErr (:)。^ 2) / (numpos));
比较校准RMS位置误差均方根误差初始位置。校准降低了RMS位置误差。
disp (solvposRMSE / initposRMSE)
0.1502
输入参数
nompos
- - - - - -名义上的相关元素的位置
实值3×-N矩阵
名义相对元素位置,指定为一个实值3×-N矩阵。维度N传感器阵列的元素数量。元素的位置是相对于数组的第一个元素和单位规定的信号波长。每一列的nompos
代表了[x, y, z]
的坐标对应的元素。所有传感器的名义位置必须在一半的波长校准的实际职位成功。
数据类型:双
x
- - - - - -飞行员的信号
复数的l——- - - - - -N——- - - - - -米矩阵
试验信号,指定为复值l——- - - - - -N——- - - - - -米矩阵。这个论点x
代表了数组当飞行员源收到的信号传输。维度l是每个飞行员的快照源信号的数目。维度N是数组元素的数量。维度米是飞行员的数量。
数据类型:双
复数的支持:金宝app是的
pilotang
- - - - - -飞行员的角度
实值2 -米矩阵
飞行员的角度,指定为一个实值2 -米矩阵。维度米是飞行员的数量。每一列包含飞行员源形式的方向[方位;海拔高度)
。单位在度。方位角必须隔-180°和180°和仰角必须隔-90°和90°。方位角的测量x设在源方向的投影到xy飞机,积极向y设在。仰角被定义为角度的xy飞机到源的方向,积极的向z设在。校准源方向必须跨越足够不同的方位角和高度角。
数据类型:双
nomtaper
- - - - - -名义上的锥度
1(默认)|复数的N1列向量
数组元素的名义锥度,指定为复值N1列向量。维度N是数组元素的数量。每个组件代表相应元素的名义锥度。
数据类型:双
复数的支持:金宝app是的
uncerts
- - - - - -不确定性估计配置
(1,1,1,1)
(默认)|1-by-4向量的1和0
不确定性估计配置,指定为1-by-4向量组成的0
的年代,1
的年代。向量uncerts
确定哪些不确定性估计。向量的形式[xflag;yflag;zflag;taperflag]
。集xflag
,yflag
,或zflag
来1
估计的不确定性x,y,或z轴。集taperflag
来1
估计不确定性的锥度。飞行员来源的数量必须大于或等于的数量1
向量中。
例如,设置uncerts
来(0,1,1,1)
估计的不确定性y和z同时元素位置组件和锥度。
数据类型:双
输出参数
estpos
——估计位置
实值3×-N矩阵
估计元素位置,作为实值返回3×-N矩阵。单位是在信号的波长。维度N是数组元素的数量。每一列的estpos
代表了[x, y, z]
的坐标对应的元素。
esttaper
——估计锥
复数的N1列向量
估计锥度值,作为复值返回N1列向量。维度N是数组元素的数量。的每个元素esttaper
代表相应的传感器元素的锥度。
算法
该算法要求飞行员来源是独立的窄带远场区域的平面波信号传入的数组。此外,信号不能展览或相干多径传播效应。传感器阵列中的所有元素都假定为各向同性。
数组的算法调整相对位置传感器对第一个传感器。使用算法,首先从每个元素减去第一个元素的位置,然后相对数组传递到函数的名义产生校准位置参数的相对位置。最后,添加返回第一个元素位置的相对位置来创建完全校准数组。
引用
[1]n Fistas和A . Manikas“一系列新的通用全球标定方法”,IEEE ICASSP学报》,第四卷,第76 - 73页,1994年4月。
扩展功能
C / c++代码生成
生成C和c++代码使用MATLAB®编码器™。
使用笔记和限制:
不支持适应输入。金宝app
版本历史
介绍了R2015a
MATLABコマンド
次のMATLABコマンドに対応するリンクがクリックされました。
コマンドをMATLABコマンドウィンドウに入力して実行してくださ了对いweb这类ブラウザーはMATLABコマンドをサポートしていません。
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。