这个例子展示了如何使用IEEE®802.11az™Wi-Fi™标准中定义的基于到达时间(ToA-based)的定位算法来估计多路径环境中的站(STA)位置。该实例使用多信号分类(MUSIC)超分辨率方法估计ToA,然后使用三边测量法估计STA的二维位置。该例子然后评估和比较定位算法在多个信噪比(SNR)点的性能。
802.11az标准[1],通常称为下一代定位(NGP),使STA能够相对于多个接入点(ap)确定其位置。该标准支持两种高效(HE)测金宝app距物理层(PHY)协议数据单元(PPDU)格式:
HE测距空数据包(NDP)
基于HE触发器(TB)测距NDP
HE测距NDP和HE TB测距NDP分别类似于HE测深NDP和HE TB反馈NDP PPDU格式,定义在802.11ax™标准中。有关这些HE PPDU格式的更多信息,请参见[2].
HE测距NDP支持一个或多个用户的定位金宝app与可选的安全HE长训练场(HE- ltf)序列。单用户HE测距波形包含单个用户的HE- ltf符号,也支持可选的安全HE- ltf序列。金宝app多用户HE测距波形只允许多个用户使用安全的HE- ltf符号。为了提高位置估计精度,单用户和多用户波形可以包含多次重复的HE-LTF符号。要参数化和生成HE范围ndp,请参见802.11 az波形生成的例子。
本例模拟一个802.11az网络,由一个STA和多个ap组成。为了估计STA的位置,网络至少需要三个ap。该示例模拟了每个STA- ap对的测距测量交换,然后使用这些测量值对STA的位置进行三边测量。该示例对多个迭代和信噪比点重复此模拟。该图展示了一个STA和三个ap的网络定位过程。
本示例通过执行以下步骤对STA和ap之间的度量交换进行建模。
生成测距NDP
根据STA和AP之间随机产生的距离延迟NDP,并添加分数和整数样本延迟
将波形通过室内TGax通道。该示例为不同的数据包建模不同的通道实现
在接收波形中加入加性高斯白噪声(AWGN)。本例中STA和ap之间的所有链路使用相同的SNR值
对接收的波形进行同步和频率校正
解调的HE-LTF
估计来自HE-LTF的信道频率响应
使用MUSIC超分辨率算法估计距离
结合其他STA- ap对的距离估计,并三边测量STA的位置
该图说明了对每个STA-AP链路的处理。
本例通过捕获NDP的时间戳在STA和每个AP之间执行距离测量。STA记录时间 (UL ToD),用于上行NDP (UL NDP)传输。随后,美联社掌握了时间 (UL ToA),记录接收UL NDP的时间 (DL ToD)发送下行NDP (DL NDP)。STA然后捕捉时间 (DL ToA)接收DL NDP的位置。此图说明STA与单个AP之间的测量测深相位[1].
估计的例子 通过组合这些时间戳来计算往返时间(RTT)。
这个例子然后计算距离 在STA和AP之间使用这个方程。
,在那里 是光速
估计的例子 和 使用MUSIC超分辨率。为了计算这些估计,示例执行以下步骤[3.].
假设子载波间距一致,从信道频率响应(CFR)中插入缺失的子载波
估计CFR相关矩阵
使用空间平滑去关联多路径
通过执行前向后平均改进相关矩阵估计。该示例假设来自多个空间流的CFR估计是不同的CFR快照,并使用所有快照进行相关矩阵估计。
运行MUSIC算法。对相关矩阵进行特征分解,将其分解为信号子空间和噪声子空间。通过寻找信号和噪声子空间正交的所有实例来估计时域延迟轮廓。这个例子假设精确的信号子空间维数等于多路径的数目,是已知的。
通过在估计的延迟轮廓中找到恢复的多路径的第一个峰值来确定ToA,假设是直线视线(DLOS)路径
这个图表说明了测距过程。
该图比较了真实的多径延迟轮廓和MUSIC估计的单个802.11az链路模拟的延迟轮廓。
heRangingPlotDelayProfile ()
本例对多个迭代和信噪比点进行测距和定位仿真。每次迭代时,AP和STA之间会交换多个上行和下行报文。该示例通过将AP和STA之间的估计距离与已知距离进行比较,来估计每个迭代中AP和STA之间的测距误差。
指定网络中的迭代次数,SNR点和AP。为了估计STA的位置,网络至少需要三个ap。对于每次迭代,使用不同的随机集AP位置,不同的信道实现和不同的AWGN配置文件。该示例通过使用来自所有迭代和所有STA-AP对的测量测量来生成绝对范围误差的累积分布函数(CDF)。
numIterations =50;%迭代次数snrRange =15:10:35;%信噪比点,以dB为单位numAPs =3.;% ap数
为每个AP和STA配置波形发生器。
chanBW =“CBW20”;%通道带宽numTx =2;%发送天线数numRx =2;%接收天线数量numSTS =2;%时空流的数量numLTFRepetitions =3.;% HE-LTF重复数
2 .配置STA的NDP参数。
cfgSTABase = heRangingConfig;cfgSTABase。ChannelBandwidth = chanBW;cfgSTABase。NumTransmitAntennas = numTx;cfgSTABase。SecureHELTF = true;cfgSTABase.User{1}。NumSpaceTimeStreams = numSTS;cfgSTABase.User{1}。NumHELTFRepetition = numLTFRepetitions; cfgSTABase.GuardInterval = 1.6;
配置ap的NDP参数。
cfgAPBase =细胞(1、numAPs);为iAP = 1:numAPs cfgAPBase{iAP} = heRangingConfig;cfgAPBase {iAP}。ChannelBandwidth = chanBW;cfgAPBase {iAP}。NumTransmitAntennas = numTx;cfgAPBase {iAP}。SecureHELTF = true;cfgAPBase {iAP} .User{1}。NumSpaceTimeStreams = numSTS;cfgAPBase {iAP} .User{1}。NumHELTFRepetition = numLTFRepetitions; cfgAPBase{iAP}.GuardInterval = 1.6;结束ofdmInfo = wlanHEOFDMInfo (“HE-LTF”、chanBW cfgSTABase.GuardInterval);sampleRate = heRangingSampleRate (cfgSTABase);
配置WLAN TGax多径通道wlanTGaxChannel
系统对象™。这个System对象可以生成一个具有主导直接路径(其中DLOS路径是最强路径)的通道,也可以生成一个具有非主导直接路径(其中DLOS路径存在,但不是最强路径)的通道。
delayProfile ='model-b';TGax信道多径延迟配置文件carrierFrequency = 5 e9;%载波频率,单位为HzspeedOfLight = physconst (“光速”);chanBase = wlanTGaxChannel;chanBase。DelayProfile = DelayProfile;chanBase。NumTransmitAntennas = numTx;chanBase。NumReceiveAntennas = numRx;chanBase。SampleRate = SampleRate; chanBase.CarrierFrequency = carrierFrequency; chanBase.ChannelBandwidth = chanBW; chanBase.PathGainsOutputPort = true; chanBase.NormalizeChannelOutputs = false;
得到信道滤波器延迟和路径数
chBaseInfo = info (chanBase);chDelay = chBaseInfo.ChannelFilterDelay;numPaths =大小(chBaseInfo.PathDelays, 2);
对所有STA-AP对运行具有多个迭代的测距模拟。显示每个信噪比点的测距平均绝对误差(MAE)和测距误差CDF。
delayULDL = 16 e-6;% UL NDP ToA与DL NDP ToD之间的延迟时间,单位为秒numSNR =元素个数(snrRange);dist = 0 (numAPs numIterations numSNR);%估计距离距离= 0 (numAPs numIterations numSNR);%真实的距离positionsta = zeros(2,numiterations,numsnr);% STA的二维位置positionAP = 0 (2 numAPs numIterations numSNR);% ap的二维位置每= 0 (numSNR, 1);包错误率(PER)%parfor isnr = 1:numSNR %使用“parfor”加速模拟为isnr = 1: numSNR%为每个parfor流使用单独的通道和波形配置对象陈= chanBase;cfgAP = cfgAPBase;cfgSTA = cfgSTABase;%初始化范围错误和总失败包计数变量rangingError = 0;failedPackets = 0;%每次迭代设置随机子流索引,以确保每个%迭代使用一组可重复的随机数流= RandStream (“combRecursive”,“种子”, 123456);流。Substream = isnr;RandStream.setGlobalStream(流);定义每个有源副载波的信噪比,以考虑噪声能量为零snrVal = snrRange(isnr) - 10*log10(ofdmInfo.FFTLength/ofdmInfo.NumTones);为iter = 1: numIterations生成随机的AP位置[positionSTA (:, iter isnr) positionAP (:,:, iter isnr) distanceAllAPs] = heGeneratePositions (numAPs);距离(:,iter isnr) = distanceAllAPs;%基于范围延迟延迟=距离(:,iter isnr) / speedOfLight;sampleDelay = * sampleRate延迟;%循环APs个数为ap = 1:numAPs linkType = [“上行”,“下行”];UL NDP的ToD % (t1)todUL = randsrc (1, 1, 0:1e-9:1e-6);% Loop为UL和DL传输numLinks =元素个数(linkType);numLinks txTime = 0 (1);为l = 1: numLinks如果linkType (l) = =“上行”STA到AP %cfgSTA。UplinkIndication = 1;UL.%%为交换生成一个随机安全的HE-LTF序列cfgSTA.User{1}。SecureHELTFSequence = dec2hex (randsrc(1、10 (0:15)))';cfg = cfgSTA;其他的% AP到STA%为交换生成一个随机安全的HE-LTF序列cfgAP{美联社}.User{1}。SecureHELTFSequence = dec2hex (randsrc(1、10 (0:15)))';cfg = cfgAP{美联社};%为DL结束%为UL和DL设置不同的通道,假设通道不是互反的重置(陈)%生成HE测距NDP传输tx = heRangingWaveformGenerator (cfg);%在发送波形中引入时间延迟(分数和整数)txDelay = heDelaySignal (tx sampleDelay(美联社));% Pad信号,并通过多径通道陈txMultipath = ([txDelay; 0 (50, cfg.NumTransmitAntennas)]);%通过AWGN通道通过波形rx = awgn (txMultipath snrVal);%执行同步和信道估计[chanEstActiveSC, integerOffset] = heRangingSynchronize (rx, cfg);%估算UL和DL之间的传输时间如果~ isempty (chanEstActiveSC)%报文检测成功%用MUSIC超分辨率估计分数延迟fracDelay = heRangingTOAEstimate (chanEstActiveSC ofdmInfo。ActiveFFTIndices,...ofdmInfo.FFTLength、sampleRate numPaths);integerOffset = integerOffset - chDelay;%通道滤波器延迟intDelay = integerOffset / sampleRate;%估计整数时间延迟txTime(l) = intDelay + fracDelay;%传输时间其他的%报文检测失败txTime (l) =南;结束结束如果~任何(isnan (txTime))%报文检测成功UL波形的% TOA (t2)toaUL = todUL + txTime(1);% DL波形偏离时间(t3)todDL = toaUL + delayULDL;% TOA DL波形(t4)toaDL = todDL + txTime(2);%计算RTTrtt = (toaDL-todUL) - (todDL-toaUL);%估计STA和AP之间的距离为(美联社,iter isnr) = (rtt / 2) * speedOfLight;累积误差到MAErangingError = rangingError + abs(distanceAllAPs(ap) - distEst(ap,iter,isnr));其他的%报文检测失败为(美联社,iter isnr) =南;failedPackets = failedPackets + 1;结束结束结束mae = rangingError/((numAPs*numIterations) - failedPackets);成功数据包的% MAE每(isnr) = failedPackets / (numAPs * numIterations);% /如果(每(isnr) > 0.01)%只使用成功的数据包进行测距和定位警告(“wlan: discardPacket”,'At SNR = %d dB, %d%%的包被丢弃'snrRange (isnr), 100 * / (isnr));结束disp (['At SNR = 'num2str (snrRange (isnr)),“数据库”,,'测距平均绝对误差= ',num2str(mae),“米”。])结束
在信噪比为15 dB时,测距平均绝对误差为0.57082米。在信噪比= 25 dB时,测距平均绝对误差= 0.40224米。在信噪比为35 dB时,测距平均绝对误差为0.25439米。
%重塑,将一个信噪比点内的所有包视为一个数据集rangingError =重塑(abs(distance - distEst),[numAPs*numIterations,numSNR]);hePlotErrorCDF (rangingError snrRange)包含(“绝对测距误差(米)”)标题(“测距误差提供”)
利用距离估计在两个维度上对STA进行三边测量,然后利用STA位置估计计算每个迭代的定位均方根误差(RMSE)。显示每个信噪比点的平均均方根误差及其CDF。
positionSTAEst = 0 (2 numIterations numSNR);RMSE = 0 (numIterations numSNR);为isnr = 1: numSNR为i = 1:numIterations positionSTAEst(:,i,isnr) = hePositionEstimate(squeeze(positionAP(:,:,i,isnr)),squeeze(distEst(:,i,isnr)));结束%找到每个迭代的RMSE,然后取所有RMSE的平均值RMSE =重塑(sqrt(mean(((positionSTAEst-positionSTA).^2),1)),[numIterations numSNR]);难题=意味着(RMSE (:, isnr),“所有”,“omitnan”);disp (['At SNR = 'num2str (snrRange (isnr)),“数据库”,,'平均均方根定位误差= 'num2str(难题),“米”。])结束
在信噪比= 15 dB时,平均均方根定位误差= 0.61713米。在信噪比= 25 dB时,平均均方根定位误差= 0.40481 m。在信噪比为35 dB时,平均均方根定位误差为0.26968 m。
snrRange hePlotErrorCDF (RMSE)包含(“RMS定位误差(米)”)标题(“定位误差CDF实验组的”)
绘制最后一次迭代的位置估计和三边测量圈。
heplottrilaterationcircles(positionap(:,:,numitorations,numsnr),positionstaest(:,numitorations,numsnr),distest(:,num erritations,numsnr),snrrange(numsnr),numiterations);
这个例子展示了如何使用IEEE®802.11az™标准的定位算法。具体来说,该示例演示了如何利用MUSIC超分辨率估计STA和AP之间的收发距离,以及如何利用多个STA-AP对的测距测量在二维空间定位STA。算例表明,通过计算多个信噪比点的定位估计,定位系统在较高信噪比下的性能有所提高。
除了信噪比,还有几个重要的参数影响定位性能,如HE-LTF重复、空间流的数量、更高的带宽和信道延迟分布。这个图显示了HE-LTF重复次数对测距性能的影响。为了生成这个图,运行一个较长的模拟,使用三个随机放置的ap和模型b2的4000次迭代 2个MIMO信道,20 MHz, 20 dB信噪比。由图可知,测距误差随着HE-LTF重复次数的增加而减小。这种降低是因为HE-LTF重复有效地通过平均多个CFR估计降低了CFR中的噪声。
此图显示了不同MIMO配置对测距性能的影响。为了生成这个图,运行一个较长的模拟,使用三个随机放置的ap和4000次迭代,生成在20 MHz的三个HE-LTF重复的范围包,并指定一个20 dB信噪比的Model-B信道。从图中可以看出,高阶MIMO配置下测距误差减小。这种降低是因为高阶MIMO配置从可用的不同空间流产生更多的CFR快照。更多的CFR快照提供更好的相关矩阵估计,从而产生更好的ToA和距离估计。
基于802.11az指纹和深度学习的三维室内定位.通过使用WLAN Toolbox生成的深度学习工具箱和IEEE 802.11AZ数据列举一个卷积神经网络(CNN),用于定位和定位。
802.11 az波形生成.参数化并生成IEEE 802.11az高效(HE)测距空数据包(NDP)波形,并突出该标准的一些关键特性。
IEEE P802.11az™/D2.0信息技术标准草案。系统之间的电信和信息交换。
IEEE P802.11ax™/ D4.1信息技术标准草案——电信和信息交换系统之间-本地和市区网络特定需求-第11部分:无线局域网介质访问控制(MAC)和物理层(体育)规范-第六修正案:高效WLAN的增强。
李新荣和K. Pahlavan,“基于多样性的超分辨率TOA估计”,《IEEE无线通信学报》,第3卷,第3期。1,页224-234,2004年1月,doi: 10.1109/TWC.2003.819035。