主要内容

802.11 OFDM信标帧生成

本例展示了如何生成包含介质访问控制(MAC)信标帧的包,适用于基带模拟或使用软件定义无线电(SDR)平台进行空中传输。

简介

在本例中,您将创建IEEE®802.11™信标帧,如第9.3.3.3节所述。1].通过Wi-Fi设备可以查看到SDR方式传输的信标报文,如图所示。

信标帧是一种管理帧,用于标识由某些802.11设备组成的基本服务集BSS (basic service set)。信标帧由MAC报头、信标帧体和有效帧检查序列(FCS)组成。信标帧体包含允许站与网络关联的信息字段。

您可以以基带文件格式存储生成的波形。

您还可以通过空中传输生成的波形。使用Xilinx®Zynq-Based Radio SDR硬件对信标包进行射频传输。无线电硬件可以在空中传输波形。

通过空中传输信标需要基于Xilinx zynq的无线电支持包,您可以使用金宝app扩展浏览器.有关SDR平台的更多信息,请参见硬件支持:通信工具金宝app箱

示例设置

信标包可以写入基带文件并使用SDR平台传输。使用SDR平台集传输信标useSDR为true。写入基带文件集saveToFile为true。

useSDR = false;saveToFile = false;

创建IEEE 802.11信标帧

根据“信标间隔”字段中指定的目标信标传输时间TBTT (target beacon transmission time), STA周期性地发送信标报文。信标间隔表示tbtt之间的时间单位(TU), 1tu代表1024微秒。如果信标间隔为100tu,则连续信标之间的时间间隔为102.4毫秒。方法可以生成信标帧wlanMACFrame功能与介质访问控制(MAC)帧配置对象wlanMACFrameConfig和MAC帧-体配置对象wlanMACManagementConfig

指定网络服务集标识符(SSID)、信标间隔、工作频带和通道号。

名称=“TEST_BEACON”;beaconInterval = 100;Band = 5;chNum = 52;

创建MAC帧-体配置对象,设置“SSID”和“Beacon Interval”字段值。

frameBodyConfig = wlanMACManagementConfig(...BeaconInterval = BeaconInterval,...名称= SSID);

将DS参数信息元素(IE)添加到帧体中艾迪对象的功能。

dsElementID = 3;dsInformation = dec2hex(chNum,2);frameBodyConfig = frameBodyConfig. addie (dsElementID,dsInformation);

创建信标帧配置对象。

beaconFrameConfig = wlanMACFrameConfig(FrameType=“灯塔”...ManagementConfig = frameBodyConfig);

生成信标帧位。

[mpduBits,mpduLength] = wlanMACFrame(beaconFrameConfig,OutputFormat=“位”);

计算指定工作频带和信道数的中心频率。

fc = wlanChannelFrequency(chNum,band);

创建IEEE 802.11信标包

配置一个非ht信标包,具有相应的PSDU长度,信道带宽为20mhz,发射天线1个,BPSK调制,编码率为1/2(对应MCS索引0)wlanNonHTConfig对象。

cfgNonHT = wlanNonHTConfig(PSDULength=mpduLength);

方法生成过采样信标包wlanWaveformGenerator函数,指定空闲时间。

Osf = 2;tbtt =信标间隔*1024e-6;tx波形= wlanWaveformGenerator(mpduBits,cfgNonHT,...OversamplingFactor = osf, Idletime = tbtt);

得到波形采样率。

Rs = wlanSampleRate(cfgNonHT, overamplingfactor =osf);

将波形保存到文件

方法将波形保存在基带文件中comm.BasebandFileWriter对象。

如果bbw = com . basebandfilewriter (“nonHTBeaconPacket.bb”、Rs、fc);% #好< UNRCH >bbw (txWaveform);释放(bbw);结束

使用SDR设备传输

在本节中,您将使用SDR设备空中传输信标包。

如果useSDRSDR平台必须支持transmitRepeat。金宝app有效平台为'AD936x'和'FMCOMMS5'。sdrPlatform =“AD936x”% #好< UNRCH >tx = sdrtx(sdrPlatform);tx.BasebandSampleRate = Rs;%将中心频率设置为相应的通道号tx.CenterFrequency = fc;结束

为了削弱信号或降低波形的传输质量,可以调整发射机增益tx.Gain.这个参数以dB表示,驱动收音机中的功率放大器。您可以使用这些建议值,或者根据您的天线配置选择不同的值。

  • 为增加增益,设置tx.Gain参数0

  • 对于默认增益,设置tx.Gain参数-10

  • 为减少增益,设置tx.Gain参数-20年

将基带波形传输到SDR平台transmitRepeat函数,然后将信号样本存储在硬件存储器中。然后,该示例在空中重复传输此波形,直到调用传输对象的释放方法。命令窗口提示传输启动成功。

如果useSDR%设置发射增益tx.增益= 0;% #好< UNRCH >通过空中传送transmitRepeat (tx txWaveform);结束

结论及进一步探索

本例展示如何为IEEE 802.11标准生成信标包,并通过Wi-Fi设备查看SDR硬件传输的信标包。您可以使用存储的基带信标包来恢复使用使用软件定义无线电的OFDM信标接收机的例子。

相关的例子

参考文献

  1. IEEE Std 802.11™-2020 IEEE(IEEE Std 802.11-2016修订版)。第11部分:无线局域网介质访问控制(MAC)和物理层(PHY)规范IEEE信息技术标准。系统间的电信和信息交换局域网和城域网。特殊要求