主要内容

WLAN网络上祝福干扰的统计建模

这个例子展示了如何模拟WLAN的统计建模干扰蓝牙®低能量(bie)网络使用通信工具箱™库蓝牙协议。共存机制用于WLAN网络上祝福的干扰最小化。在这个例子中,每个WLAN网络的碰撞概率用于腐败BLE信号。生成的仿真结果在这个例子中得出这样的结论:对于高碰撞概率的WLAN频道的实现各自的祝福通道的成功率很低。

BLE-WLAN共存机制

有不同类型的无线网络操作在同一授权频段,可以为两个不同的网络相互干扰。这种干扰可能会导致网络传输失败。没有标准化的算法实现共存的两个不同的无线网络。然而,IEEE®802.15.2™标准(1)指定一些推荐实践实现共存的无线个人区域网(WPAN)与其他无线设备在无证经营的频段。

这个例子说明了WLAN网络上祝福干扰的统计建模。WLAN通信需要至少20 MHz带宽,同时祝福设备只需要2 MHz带宽。WLAN使用一个信道访问机制称为载波监听多路访问与避碰(CSMA / CA),虽然祝福设备使用跳频。干涉发生在祝福和WLAN设备的操作频率重叠。尽量减少干扰,共存机制使用。

共存机制大体分为这两类(1]:

  • 协作:这种机制要求祝福和WLAN网络之间的通信链路。因为这两个网络可以相互通信,其中一个网络暂停其传播,另一种是使用渠道。这种机制是WLAN和BLE设备时使用嵌入相同的物理设备。

  • 这个:这种机制不需要任何祝福和WLAN网络之间的通信链路。自这两个网络不能相互通信,他们用自己的方法来检测其他网络的干扰。这种机制时使用WLAN和BLE设备不嵌入相同的物理设备。

这个示例演示了一个共存机制这个祝福与WLAN设备。

祝福与WLAN共存——模型描述

本节阐述了数据通信在祝福,WLAN干扰和共存算法用于避免干涉这个例子。

沟通在祝福:祝福在链路层定义了两个主要角色,即主人和奴隶。主发起数据通信和奴隶对主人。在这个例子中,祝福包之间交换建模一个主和多个(可配置到5)奴隶。在祝福2),只有在发生数据通信连接事件。连接事件是一个反复出现的(定期称为连接间隔)序列的数据包交换主人和奴隶之间的。连接事件中的所有数据包在传输相同的数据通道。在每个连接事件,主发起沟通各自的奴隶。此后,奴隶对主人数据包。如果没有数据发送,奴隶用一个空的数据包进行响应。在这个例子中,只有一个事务建模的每个连接事件。一个新的连接事件使用新的数据通道。新频道选择基于自适应通道跳跃。通道地图指示好或坏通道使用而选择一个新的通道,因此显示通道跳跃的适应能力。

WLAN交通:WLAN交通动态添加或移除,该模型根据指定的开始和结束时间。每个WLAN网络配置与个体碰撞概率。对于每个传输,生成一个随机数在0和1之间。如果生成的随机数小于碰撞概率,然后传输帧损坏。

祝福与WLAN共存:如果选中的BLE通道显著影响WLAN干涉碰撞概率的基础上,然后祝福传送数据包将接受腐败。主设备定期进行奴隶通道作为“好渠道”或“坏通道”,基于渠道包失败。该频道分类信息存储在一个位图的形式称为通道映射。位图是1和0的数组定义的分类频道(“好”或“坏”)。的classifyChannels功能分类BLE渠道和存储生成的位图。主维护每个奴隶的不同通道映射。更新的地图频道发送到奴隶。周期性的频道分类配置通过设置属性ClassificationIntervalhelperBLEChannelClassification对象。BLE设备在空闲状态,计算信道繁忙时间所有的“坏通道”进行能量检测(ED)。如果当前的好渠道小于首选的好渠道,坏的渠道进行分类。这种分类是基于信道忙的时候BadChannelClassificationMethod属性设置为“使用能源的迹象”。如果BadChannelClassificationMethod属性设置为“重置所有不好的渠道的,所有的坏通道是重置为好渠道。

检查支持包安装金宝app

检查对蓝牙协议的通信工具库的支持包是否安装。金宝app

comm金宝appSupportPackageCheck (“蓝牙”);

BLE配置参数

这部分增加了一个祝福主设备和指定数量的奴隶设备BLE网络。因为主人负责更新频道为每个奴隶在BLE网络地图,频道分类参数配置在主设备使用helperBLEChannelClassification。的helperBLEDeviceModel对象用于模型与WLAN BLE共存。

%的数量BLE奴隶的主人slavesCount = 1;%创建BLE主设备的能力与“slavesCount”%的奴隶主= helperBLEDeviceModel (“角色”,“大师”,“SlavesCount”,slavesCount);%初始化通道分类参数分类祝福%通道为好或坏的通道。PERThreshold:包% ClassificationInterval错误率(每)阈值:%周期性RxStatusCount频道分类:%接收数据包的最大数量MinRxCountToClassify现状:%最小数量的收到数据包BadChannelClassificationMethod现状:%的方法坏PreferredMinimumGoodChannels频道分类:%首选的好渠道channelClassification = helperBLEChannelClassification (“PERThreshold”现年60岁的“ClassificationInterval”,150,“RxStatusCount”,50岁,“MinRxCountToClassify”4“BadChannelClassificationMethod”,使用能量检测的,“PreferredMinimumGoodChannels”,20);%分配频道分类参数到主设备的主人。ChannelClassification = ChannelClassification;%初始化“slavesCount”数量的奴隶奴隶(slavesCount) = helperBLEDeviceModel;%创建“slavesCount”数量的奴隶设备idx = 1: slavesCount奴隶(idx) = helperBLEDeviceModel (“角色”,“奴隶”);结束%之间创建“slavesCount”连接“大师”和“奴隶”。这%函数创建一个链路层连接通过分享共同的连接%间隔等参数连接,为每一个访问地址%对主从连接。(主人,奴隶)= helperBLECreateLLConnection(主人,奴隶);

WLAN交通模型

本节WLAN交通使用指定的配置模型。

配置参数

每个WLAN网络的配置参数包括碰撞概率,干扰在指定的开始时间和结束时间干扰WLAN通道。的helperBLEWLANStatisticalTrafficConfig对象用于WLAN交通模型。

%设置数量的WLAN网络干扰BLE网络wlanNetworksCount = 6;%的WLAN通道(在[1、14])所使用的每一个WLAN网络wlanChannels = (1、5、6、12 9 8];%的概率与祝福每个WLAN网络网络的碰撞collisionProbabilities = (0.35, 0.48, 0.26, 0.60, 0.28, 0.34);%开始和结束时间(以毫秒为单位),在每个WLAN传输%网络wlanInterferencePeriod =[0,正无穷;0,正无穷;0,2100;0,正无穷;200年,2800年;150年,正);

WLAN交通模型

这部分配置每个奴隶的干扰通过添加WLAN交通与指定的配置。WLAN网络添加在所有指定的WLAN渠道使用wlanTraffic函数。

%为WLAN交通创建一个配置对象wlanTrafficConfig = helperBLEWLANStatisticalTrafficConfig ();% WLAN交通配置指定的WLAN网络参数wlanTraffic (wlanTrafficConfig wlanNetworksCount wlanChannels,collisionProbabilities wlanInterferencePeriod);

共存的模拟

本节说明了主人和奴隶之间的通信设备在WLAN干扰统计。

初始化仿真参数

仿真参数的统计建模所需WLAN干扰BLE网络初始化代码。

%初始化仿真参数%重置随机数生成器的种子sprev = rng (“默认”);%与WLAN BLE共处使可视化,设置%”enableVisualization”为真。禁用BLE的可视化%与WLAN设置“enableVisualization”共存,假的。enableVisualization = true;%,使频道跳频序列的可视化,设置%”enableHoppingVisualization”为真。禁用的可视化%频道跳频序列,将“enableHoppingVisualization”设置为false。%如果“enableVisualization”设为false,然后%”enableHoppingVisualization”不是考虑。enableHoppingVisualization = true;%总模拟时间,以毫秒为单位simulationTime = 4000;%一步时间是0.025毫秒。所有的时间%参数(连接间隔、扫描间隔、广告间隔,%在BLE规范等)的倍数0.625毫秒。的这个示例中使用%最大数据包大小33个八位字节(264位)。的%数据包传输时间在不同的体育模式是:0.264毫秒% (LE1M), 0.132毫秒(LE2M), 0.528毫秒(LE500K)%和1.056毫秒(LE125K)。因此,步骤时间%认为是0.025毫秒(0.625是0.025的倍数)来实现%仿真时间和准确性之间的权衡。步伐= 0.025;%为空包创建结构来初始化输出的主%和奴隶LLPDU:生成的链路层协议数据单元(PDU)%的附加%循环冗余校验(CRC)% RateIndex:字符串表示的速率包%传播。它包含一个“LE2M”|“LE1M”|“LE500K”% |“LE125K”% AccessAddress:为每个主从连接对唯一的地址% ChannelIndex:通道传输的数据包emptyPacket =结构(“LLPDU”[],“AccessAddress”,,“RateIndex”,,“ChannelIndex”1);%初始化奴隶的输出slaveOutput = emptyPacket;% Preallocate缓冲区存储奴隶输出slaveOutputs =细胞(1、slavesCount);

模拟

本节模拟之间的数据包交换祝福主人和奴隶设备在特定的时间。

  • 主(传输或接收):在每个连接事件,祝福主人发起与各自的奴隶通过传输通信链路层数据包的数据通道。生成的祝福包损坏WLAN碰撞概率的基础上各自的通道。传输后,主人等待响应的奴隶。

  • 奴隶(传输或接收):在每个连接事件,祝福奴隶接收干扰包从主数据通道。此后,奴隶对主人在同一传输信道的数据链路层数据包。生成的祝福包损坏WLAN碰撞概率的基础上各自的通道。

运行的函数helperBLEDeviceModel是用来祝福主人和奴隶之间的通信设备。的getInterferenceLevel功能验证BLE通道是否显著干扰WLAN流量。的helperBLEVisualizeCoexistence可视化仿真与WLAN交通BLE共处。

%初始化数据的可视化共存模型为每个奴隶。%这可视化显示了WLAN渠道以及它们的碰撞%的概率,也显示了通信通道跳跃%祝福主人和奴隶之间的设备。它还显示了状态(好或%坏)的每个祝福通道以及各自的成功率%的通道。coexistenceModel =helperBLEVisualizeCoexistence (“行动”,“初始化”,“SlaveCount”slavesCount,“WLANChannelList”wlanChannels,“PERThreshold”master.ChannelClassification.PERThreshold,“ClassificationInterval”master.ChannelClassification.ClassificationInterval,“ChannelBusyCountThreshold”master.ChannelClassification.ChannelBusyCountThreshold,“PreferredMinimumGoodChannels”master.ChannelClassification.PreferredMinimumGoodChannels,“ConnectionInterval”.ConnectionInterval master.LLConnectionConfigs (1),“Stoptime”simulationTime,“EnableVisualization”enableVisualization,“EnableHoppingVisualization”,enableHoppingVisualization);coexistenceModel.initializeVisualization ();视图模型(coexistenceModel);的主人。CoexistenceVisualization = coexistenceModel;%运行仿真simulationTimer = 0:步伐:simulationTime%停止仿真,如果所有的奴隶都是断开的%的主人由于干扰。主人和奴隶时断开连接%的每个祝福他们沟通渠道其他高%。如果元素个数(master.ActiveConnectionIdxs(主人。ActiveConnectionIdxs ~ = 1)) = = 0流(的仿真终止所有的奴隶都断开主设备。\ n”)打破;结束%更新WLAN的交通可视化helperBLEUpdateWLANTraffic (slavesCount wlanChannels wlanTrafficConfig,simulationTimer,主人);%的主人:传输或接收模式如果(主。ActiveChannel = = slaveOutput.ChannelIndex) & &strcmpi(主。ActiveAccessAddress slaveOutput.AccessAddress) masterOutput =运行(主人,slaveOutput);其他的masterOutput =运行(主人,emptyPacket);结束如果~ (isempty (masterOutput.LLPDU) interferenceEffect = getInterferenceLevel (wlanTrafficConfig,masterOutput。ChannelIndex simulationTimer);%腐败的数据包,如果干涉效应是1如果(interferenceEffect = = 1) masterOutput.LLPDU (1:2) = ~ masterOutput.LLPDU (1:2);%放下包,如果干涉效应是2%(干扰太高)elseif(interferenceEffect = = 2) masterOutput = emptyPacket;结束结束%更新当前仿真时间coexistenceModel。CurrentTime = simulationTimer;coexistenceModel。Action =“模拟进展”;%的奴隶:传输或接收模式idx = 1: slavesCount%通过“MasterOutput”奴隶听相同的%频率和匹配访问地址如果(奴隶(idx)。ActiveChannel = = masterOutput.ChannelIndex) & &strcmpi(奴隶(idx)。ActiveAccessAddress masterOutput.AccessAddress) slaveOutputs {idx} =运行(奴隶(idx), masterOutput);%空数据包传递给所有其他奴隶更新计时器其他的slaveOutputs {idx} =运行(奴隶(idx), emptyPacket);结束%更新模拟进展为每一个奴隶coexistenceModel。SlaveNumber = idx;视图模型(coexistenceModel)结束slaveOutput = emptyPacket;%得到积极的奴隶输出(在任何时候只有一个奴隶实例%活跃)idx = 1: slavesCount如果~ isempty (slaveOutputs {idx} .LLPDU) slaveOutput = slaveOutputs {idx};打破;结束结束如果~ (isempty (slaveOutput.LLPDU) interferenceEffect = getInterferenceLevel (wlanTrafficConfig,slaveOutput。ChannelIndex simulationTimer);%腐败的数据包,如果干涉效应是1如果(interferenceEffect = = 1) slaveOutput.LLPDU (1:2) = ~ slaveOutput.LLPDU (1:2);%放下包,如果干涉效应是2%(干扰太高)elseif(interferenceEffect = = 2) slaveOutput = emptyPacket;结束结束结束%更新每个奴隶的模拟进展idx = 1: slavesCount master.CoexistenceVisualization。SlaveNumber = idx;master.CoexistenceVisualization。Action =“模拟进展”;视图模型(master.CoexistenceVisualization)结束%日志本例的统计数据% | bleCoexistenceWithStatisticalWLANStatistics。垫|文件helperBLELogCoexistenceStats(主人,奴隶,“bleCoexistenceWithStatisticalWLANStatistics.mat”);%恢复以前的设置随机数生成rng (sprev);

仿真结果

这个示例中生成的模拟:

  1. 一双为每个主从连接运行时的情节描述状态(好或坏)和累积,最近每个通道显示的成功率

  2. 一个垫子文件bleCoexistenceWithStatisticalWLANStatistics.mat与收到的数据包数量等详细统计数据,每个通道上的数据包数量损坏和状态(好或坏)的每个分类间隔的通道

这个例子使您与WLAN统计分析BLE共存干扰。碰撞的概率每个WLAN网络用于腐败BLE包。祝福主人和奴隶设备使用良好的渠道相互沟通以避免丢包。在每个祝福通道计算成功率。这个例子中得出结论:高碰撞概率的WLAN频道的实现各自的祝福通道的成功率很低。因此,这些渠道不是用来祝福主人和奴隶之间的通信设备。

附录

这个例子使用这些特性:

本例使用这些助手:

选定的参考书目

  1. IEEE标准®802.15.2™。“共存的无线个人区域网络与其他无线设备在无证经营的频率乐队”。IEEE推荐信息技术实践-电信和信息交换系统之间的地方和市区网络——具体要求;IEEE计算机协会

  2. 蓝牙特别兴趣小组(团体)。“蓝牙核心规范”。5.0版。https://www.bluetooth.com/

相关的话题