使用超分辨率到达时间估计的802.11az定位
这个例子展示了如何使用IEEE®802.11az™Wi-Fi™标准中定义的基于到达时间(toa)的定位算法,在多路径环境中估计一个站点(STA)的位置。该示例通过使用多重信号分类(MUSIC)超分辨率方法估计了ToA,然后通过使用三分法估计了STA的二维位置。然后,该示例在多个信噪比(SNR)点上评估和比较定位算法的性能。
介绍
802.11az标准[1,通常被称为下一代定位(NGP),使STA能够识别其相对于多个接入点(ap)的位置。该标准支持两种高效(HE)测距物理层(PHY)协议数据单元(PPDU)格式:
HE测距空数据包(NDP)
HE触发器(TB)测距NDP
根据802.11ax™标准的定义,HE测距NDP和HE TB测距NDP分别类似于HE探空NDP和HE TB反馈NDP PPDU格式。有关这些HE PPDU格式的更多信息,请参见[2]。
HE测距NDP支持具有可选安全HE长训练场(HE- ltf)序列的一个或多个用户的定位。单用户HE测距波形包含单用户的HE- ltf符号,也支持可选的安全HE- ltf序列。多用户HE测距波形只允许多个用户使用安全的HE- ltf符号。为了提高位置估计精度,单用户和多用户波形可以包含HE-LTF符号的多次重复。要参数化并生成HE测距ndp,请参见802.11 az波形生成的例子。
本例模拟了一个由STA和多个ap组成的802.11az网络。为了估计STA的位置,网络中至少需要3个ap。该示例模拟了每个STA- ap对的测距测量交换,然后通过使用这些测量值对STA的位置进行三边计算。该示例对多次迭代和信噪比点重复此模拟。这张图显示了一个STA和三个ap的网络中的定位过程。
包传输和接收
本例通过执行这些步骤来建模STA和ap之间的测量交换。
生成一个测距NDP
根据STA和AP之间随机生成的距离延迟NDP,添加分数和整数样本延迟
将波形通过室内TGax通道传递。该示例为不同的包建模了不同的信道实现
在接收波形中添加加性高斯白噪声(AWGN)。本例对STA和ap之间的所有链路使用相同的信噪比值
对接收到的波形执行同步和频率校正
解调的HE-LTF
估计HE-LTF的信道频率响应
使用MUSIC超分辨率算法估计距离
结合来自其他STA- ap对的距离估计,并对STA的位置进行三边分析
该图说明了每个STA-AP链路的处理过程。
距离范围
该示例通过捕获NDP的时间戳,执行STA和每个AP之间的距离范围测量。STA记录时间 (UL ToD),在该位置传输上行NDP (UL NDP)。然后,AP捕获时间 (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)路径
这张图说明了测距过程。
该图比较了单个802.11az链路模拟的真实多路径延迟配置文件和MUSIC估计的延迟配置文件。
heRangingPlotDelayProfile ()
仿真参数
这个例子为多个迭代和信噪比点执行测距和定位模拟。在每次迭代中,AP和STA交换多个上行链路和下行链路数据包。本例通过将AP和STA之间的估计距离与已知距离进行比较,来估计每次迭代中AP和STA之间的测距误差。
指定网络中的迭代次数、信噪比点和ap。为了估计STA的位置,网络中至少需要3个ap。对于每次迭代,使用不同的随机AP位置集、不同的信道实现和不同的AWGN配置文件。该示例通过使用来自所有迭代和所有STA-AP对的测距测量,为绝对测距误差生成一个累积分布函数(CDF)。
numIterations =50;%迭代次数snrRange =15:10:35;%信噪比点,单位为dBnumAPs =3.;% ap数量
802.11 az波形配置
为每个AP和STA配置波形发生器。
chanBW =“CBW20”;%通道带宽numTx =2;%发射天线的数量numRx =2;%接收天线数numSTS =2;%时空流数numLTFRepetitions =3.;HE-LTF重复次数%
配置STA的HE测距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的HE测距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 = wlanSampleRate (chanBW);
通道配置
配置WLAN TGax多路径通道wlanTGaxChannel
系统对象™。这个System对象可以生成一个具有显性直接路径的通道,其中DLOS路径是最强路径,或者一个具有非显性直接路径的通道,DLOS路径存在,但不是最强路径。
delayProfile =“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 = 0 (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(流);定义每个有源子载波的信噪比,以考虑null中的噪声能量。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延迟;%循环ap的数量为ap = 1:numAPs linkType = [“上行”,“下行”];UL NDP的% ToD (t1)todUL = randsrc (1, 1, 0:1e-9:1e-6);%循环的UL和DL传输numLinks =元素个数(linkType);numLinks txTime = 0 (1);为l = 1: numLinks如果linkType (l) = =“上行”% STA to APcfgSTA。UplinkIndication = 1;%的UL%为交换生成一个随机的安全HE-LTF序列cfgSTA.User{1}。SecureHELTFSequence = dec2hex (randsrc(1、10 (0:15)))';cfg = cfgSTA;其他的% AP to 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”,'在信噪比= %d dB时,%d%%的包被丢弃'snrRange (isnr), 100 * / (isnr));结束disp ([“At SNR =”num2str (snrRange (isnr)),“数据库”,,'测距平均绝对误差= 'num2str(美),“米”。])结束
在SNR = 15 dB时,测距平均绝对误差= 0.57082米。在信噪比= 25 dB时,测距平均绝对误差= 0.40224米。在信噪比= 35 dB时,测距平均绝对误差= 0.25439米。
%重塑以将一个信噪比点内的所有数据包视为一个数据集rangingError =重塑(abs(distance - distEst),[numAPs*numIterations,numSNR]);hePlotErrorCDF (rangingError snrRange)包含(“绝对测距误差(米)”)标题(“测距误差提供”)
三边测量
利用距离估计值在二维上对STA的位置进行Trilaterate,然后利用STA的位置估计值计算每次迭代的定位均方根误差(RMSE)。显示每个SNR点的平均RMSE及其CDF。
positionSTAEst = 0 (2 numIterations numSNR);RMSE = 0 (numIterations numSNR);为isnr = 1: numSNR为i = 1:numIterations positionSTAEst(:,i,isnr) = hePositionEstimate(挤压(positionAP(:,:,i,isnr)),挤压(distEst(:,i,isnr)));结束%找到每一次迭代的RMSE,然后取所有RMSE的平均值RMSE =重塑(sqrt(mean((positionSTAEst-positionSTA).^2),1)),[numIterations numSNR]);难题=意味着(RMSE (:, isnr),“所有”,“omitnan”);disp ([“At SNR =”num2str (snrRange (isnr)),“数据库”,,“平均RMS定位错误=”num2str(难题),“米”。])结束
在SNR = 15 dB时,平均RMS定位误差= 0.61713米。在信噪比= 25 dB时,平均RMS定位误差= 0.40481米。在信噪比= 35 dB时,平均RMS定位误差= 0.26968米。
snrRange hePlotErrorCDF (RMSE)包含(“RMS定位误差(米)”)标题(“定位误差CDF实验组的”)
绘制最后一次迭代的位置估计和trilateration圆。
hePlotTrilaterationCircles (positionAP (:,:, numIterations numSNR), positionSTAEst (:, numIterations numSNR),为(:,numIterations numSNR) snrRange (numSNR) numIterations);
结论
这个例子展示了如何使用IEEE®802.11az™标准的定位算法。特别地,该示例演示了如何使用MUSIC超分辨率估计STA和AP之间的发射-接收距离,以及如何使用多个STA-AP对的测距测量在二维中定位STA。该示例通过计算在多个信噪比点上的定位估计值,演示了在更高信噪比下定位系统性能的提高。
进一步的探索
除了信噪比,还有几个重要参数会影响定位性能,如HE-LTF重复、空间流的数量、更高的带宽和通道延迟配置。该图显示了HE-LTF重复对测距性能的影响。为了生成这个图,对model - b2运行一个较长的模拟,使用三个随机放置的ap和4000次迭代 2个20兆赫的MIMO通道,以20 dB信噪比。从图中可以看出,测距误差随着HE-LTF重复次数的增加而减小。之所以会出现这种下降,是因为HE-LTF重复通过求出多个CFR估计值的平均值,有效地降低了CFR中的噪声。
该图显示了不同MIMO配置对测距性能的影响。为了生成这个图,运行一个较长的模拟,使用三个随机放置的ap和4000次迭代,在20 MHz下生成三个HE-LTF重复的测距包,并指定一个Model-B通道,SNR为20 dB。图中显示,在高阶MIMO配置下,测距误差减小。这种减少是因为高阶MIMO配置从可用的不同空间流产生更多的CFR快照。更多的CFR快照提供更好的相关矩阵估计,从而产生更好的ToA和距离估计。
相关的例子
使用802.11az指纹和深度学习的三维室内定位。使用深度学习工具箱和使用WLAN工具箱生成的IEEE 802.11az数据,训练卷积神经网络(CNN)进行定位和定位。
802.11 az波形生成。参数化和生成IEEE 802.11az高效(HE)测距空数据包(NDP)波形,并突出显示标准的一些关键特征。
参考文献
IEEE P802.11az™/D2.0信息技术标准草案。系统间的电信和信息交换。局域网和城域网。特殊要求。修改件3:定位的增强。
IEEE Std 802.11 ax™-2021。IEEE信息技术标准-系统间的电信和信息交换-局域网和城域网-特殊要求-第11部分:无线局域网介质访问控制(MAC)和物理层(PHY)规范-修改件1:高效WLAN的增强。
李新荣和K. Pahlavan,“用于室内地理定位的具有分集的超分辨率TOA估计”,载于《IEEE无线通信汇刊》第3卷第3期。1,第224-234页,2004年1月,doi: 10.1109/TWC.2003.819035。