主要内容

802.11 ax住宅场景的多节点系统级仿真

这个例子展示了如何建模性能的IEEE 802.11®ax™(1网络在住宅的情况下利用WLAN工具箱™和通信工具箱™无线网络仿真库。

使用这个示例中,您可以:

  • 模拟一个住宅场景通过配置网络和信道参数。

  • 模拟一个多节点WLAN系统和捕获网络相关统计数据。

  • 模拟网络抽象和模型之间的转换的媒介访问控制层(MAC)和物理(体育)。

仿真结果表明性能指标如吞吐量、延迟和丢包。

此外,您可以使用该示例脚本导出WLAN MAC帧PCAP或PCAPNG文件。有关更多信息,请参见进一步的探索

住宅的场景

这个示例演示了一个系统级的仿真评估802.11 ax网络的性能在一个住宅的场景。住宅建筑的场景由三层。这些都是住宅的特征的场景:

  • 层之间的间距是3米。

  • 每层楼共有四个房间,每个房间的尺寸是10-by-10-by-3米。

  • 每个房间都有一个接入点(AP)和两个电台(斯塔斯)随机放置x- - -y位置的高度1.5米从地板上。

  • 每个AP传输数据相关的斯塔斯在一个房间里。

仿真场景中指定一个路径损耗模型基于节点之间的距离,和墙壁和地板的数量遍历的WLAN的信号。这个图显示了这个示例中的住宅场景模拟。

示例住宅场景

确认符合IEEE 802.11标准(2),在本例的特性与Box-3验证和box 5场景中指定TGax评价方法(3]。TGax模拟场景的网络吞吐量计算(4)根据发表的校准结果进行验证TGax任务组。

检查支持包安装万博1manbetx

检查通信工具箱™安装无线网络仿真库支持包。万博1manbetx如果支持包没有万博1manbetx安装,MATLAB®返回一个错误的链接下载并安装包的支持。

wirelessnetwork万博1manbetxSupportPackageCheck

配置参数

仿真参数

设置随机数生成器的种子1。随机数生成的种子值控制模式。生成的随机数种子值影响几个过程模拟,包括补偿计数器选择在MAC层和预测在PHY层数据包接收成功。改善你的仿真结果的准确性仿真运行后,你可以改变的种子值,再次运行仿真,在多个模拟和平均结果。

rng (1,“combRecursive”)

指定仿真时间以秒为单位。想象生活状态转换图的所有节点,设置showLiveStateTransitionPlot变量来真正的

simulationTime =0.12;showLiveStateTransitionPlot =真正的;

这个示例使用MAC层和物理层的抽象模型层的所有节点默认(APs和斯塔斯)。使用完整的MAC层模型,设置MACFrameAbstraction变量来。同样,使用完整的PHY层模型,设置PHYAbstractionMethod变量来没有一个。关于MAC层和物理层的更多信息,请参阅开始使用MATLAB的WLAN系统级仿真的例子。

MACFrameAbstraction =真正的;PHYAbstractionMethod =“tgax-evaluation-methodology”;

住宅场景参数

ScenarioParameters结构定义的大小和布局住宅使用这些参数。

  • BuildingLayout——指定数量的房间沿着建筑物的宽度和高度。

  • RoomSize——指定每个房间的大小米。

  • NumRxPerRoom——指定每个房间的站数。

示例假定每个房间包含一个传输美联社和两个接收斯塔斯。

ScenarioParameters =结构;ScenarioParameters。BuildingLayout= [2 2 3]; ScenarioParameters.RoomSize = [10 10 3]; ScenarioParameters.NumRxPerRoom = 2;

配置WLAN的场景

初始化模拟器通过使用无线网络wirelessNetworkSimulator对象。

networkSimulator = wirelessNetworkSimulator.init;

节点

这个示例创建了一个住宅36节点组成的场景。节点1节点12 APs,节点13节点36斯塔斯。的hGetIDsAndPositions辅助函数返回节点id和随机位置对美联社和斯塔斯在每个房间。函数返回一个数组,nodeid,每一行存储id的AP及其相关斯塔斯在一个房间里。的同位语staPositions输出包含x- - - - - -,y,分别和z-Cartesian坐标的APs和斯塔斯。单位是米。

[nodeid,同位语,staPositions] = hGetIDsAndPositions (ScenarioParameters);

wlanDeviceConfig对象允许您设置的配置参数APs和斯塔斯。创建两个wlanDeviceConfig对象初始化配置参数APs和斯塔斯。指定操作模式、调制和编码方案,传动功率(dBm) APs和斯塔斯。

accessPointCfg = = wlanDeviceConfig(模式“美联社”MCS = 2, TransmitPower = 15);% AP设备配置stationCfg = = wlanDeviceConfig(模式“STA”MCS = 2, TransmitPower = 15);% STA设备配置

创建两个数组wlanNode对象,美联社对应节点和STA节点,通过指定的位置属性是同位语staPosition,分别。每个数组包含的对象的数量等于指定的位置对应的值。指定的名字,DeviceConfig,PHYAbstractionMethod,MACFrameAbstraction的属性wlanNode对象。

accesspoint = wlanNode(位置=并列,Name =“美联社”+(1:尺寸(同位语,1)),DeviceConfig = accessPointCfg,PHYAbstractionMethod = PHYAbstractionMethod,MACFrameAbstraction = MACFrameAbstraction);= staPositions站= wlanNode(位置,Name =“STA”+(1:尺寸(staPositions, 1)),DeviceConfig = stationCfg,PHYAbstractionMethod = PHYAbstractionMethod,MACFrameAbstraction = MACFrameAbstraction);

创建一个WLAN网络组成的APs和斯塔斯。

节点= (accesspoint站);

确保所有的节点都配置正确,使用hCheckWLANNodesConfigurationhelper函数。

hCheckWLANNodesConfiguration(节点)

协会和应用程序流量

把斯塔斯在每个房间对应的美联社通过使用associateStations对象的函数wlanNode对象。与连续应用程序配置APs流量相关斯塔斯使用FullBufferTraffic论点。

numAPs = prod (ScenarioParameters.BuildingLayout);%每个房间一个美联社apID = 1: numAPs associateStations(节点(apID),[节点(nodeid (apID, 2:结束))),FullBufferTraffic =“DL”);结束

创建网络

创建网站从发射机和接收机节点配置使用hCreateSitesFromNodeshelper函数。创建从住宅建筑几何场景参数使用hTGaxResidentialTriangulationhelper对象。可视化居住建筑以及发射机和接收机网站使用hVisualizeScenariohelper函数。

[txSites, rxSites] = hCreateSitesFromNodes(节点);triangulationObj = hTGaxResidentialTriangulation (ScenarioParameters);hVisualizeScenario (triangulationObj txSites rxSites,同位语)

图包含一个坐标轴对象。坐标轴对象包含x, y ylabel包含40块类型的对象,线,文本,散射。这些对象代表美联社,STA。

无线信道

下面的例子使用了TGax住宅传播模型来确定节点之间的路径损耗。路径损耗是一个函数的墙壁,地板,节点之间的距离。通过创建一个路径损耗模型hTGaxResidentialPathLosshelper函数。通过使用获得路径损失函数处理hCreatePathlossTablehelper函数。

propModel = hTGaxResidentialPathLoss(三角= triangulationObj ShadowSigma = 0, FacesPerWall = 1);[~,pathLossFcn] = hCreatePathlossTable (txSites、rxSites propModel);

通道对象添加到无线网络模拟器,创建一个hSLSTGaxMultiFrequencySystemChannel辅助对象通过使用路径损失函数处理。住宅路径损耗模型添加到网络模拟器使用addChannelModel对象的函数wirelessNetworkSimulator对象。

频道= hSLSTGaxMultiFrequencySystemChannel(节点,PathLossModel =“自定义”PathLossModelFcn = pathLossFcn);addChannelModel (networkSimulator channel.ChannelFcn)

模拟

将节点添加到无线网络模拟器。

addnode (networkSimulator节点)

查看状态转换和性能指标图,创建一个hSimulationPlotViewerhelper对象。默认情况下,这个helper对象显示了所有节点的情节中配置模拟。可视化的状态转换和性能指标具体节点,指定相应的节点对象作为第二个参数辅助对象。

viewerObj = hSimulationPlotViewer (showLiveStateTransitionPlot节点);

运行网络模拟为指定的模拟时间。运行时可视化显示了由美联社和STA在空闲的时间,争用,传输和接收状态。

运行(networkSimulator simulationTime);

随着时间的推移MAC状态转换图包含一个坐标轴对象和另一个类型的对象uicontrol。坐标轴对象包含节点时间(微秒),ylabel节点名称包含4988个对象类型的酒吧,长方形。这些对象代表论点,传播,接待,接待(注定节点),其他(型/ sif /空闲/忙碌)。

结果

检索应用程序,MAC层和物理层数据在每个节点使用统计数据对象的函数wlanNode对象。

统计=统计数据(节点);

阴谋利用每个节点的性能plotNetworkStats的函数hSimulationPlotViewer对象。你可以想象这些模拟图。

  • 吞吐量(Mbps)在每个发射机(美联社)。

  • 丢包率(数据传输失败总比数据传输)在每个传感器(APs)。

  • 平均数据包延迟发生在每一个接收器(STA)。平均数据包延迟显示了每个STA的平均延时所接受美联社的下行流量。

plotNetworkStats (viewerObj simulationTime)

图包含3轴对象。坐标轴对象1标题吞吐量在每个发射机,包含节点名称,ylabel吞吐量(Mbps)包含一个对象类型的酒吧。坐标轴对象与标题2包丢失在每个发射机,包含节点名称,ylabel丢包率包含一个对象类型的酒吧。坐标轴对象3标题平均数据包延迟在每个接收器,包含节点名称,ylabel平均数据包延迟(s)包含一个对象类型的酒吧。

进一步的探索

出口无线局域网MAC帧PCAP或PCAPNG文件

您可以捕获数据包在STA和AP节点使用hExportWLANPacketshelper对象。指定的节点对象要捕获数据包。在多个节点捕获数据包,指定相应的节点对象作为一个数组。你可以在美联社导出数据包捕获和STA节点PCAP或PCAPNG文件。关于捕获数据包的更多信息,和出口PCAP或PCAPNG捕获数据包文件,看到了开始使用MATLAB的WLAN系统级仿真的例子。

附录

本例使用这些助手:

引用

  1. 电气和电子工程师学会(IEEE)。IEEE标准信息技术——之间的通信和信息交换系统本地和市区网络——特定需求第11部分:无线局域网介质访问控制(MAC)和物理层(体育)规范修正案1:高效WLAN的增强。IEEE 802.11 ax - 2021。IEEE 2021年5月19日。https://doi.org/10.1109/IEEESTD.2021.9442429

  2. 电气和电子工程师学会(IEEE)。IEEE标准信息技术——之间的通信和信息交换系统本地和市区网络——特定需求第11部分:无线局域网介质访问控制(MAC)和物理层规范(体育)。IEEE 802.11 -2020。IEEE, 2021年2月26日。https://doi.org/10.1109/IEEESTD.2021.9363693

  3. 电气和电子工程师学会(IEEE)。11 ax评价方法。IEEE 802.11 14/0571r12。IEEE, 2016年1月。

  4. 电气和电子工程师学会(IEEE)。TGax模拟场景。IEEE 802.11 14/0980r16。IEEE 2015。

另请参阅

功能

对象

相关的话题