MATLAB中WLAN工具库——学习记录2

802.11MAC帧解码

功能:展示如何解码IEEE 802.11 MAC帧

背景:通用的MAC帧格式由帧头、帧体和帧检查序列(FCS)组成。帧头保存有关帧的信息。帧体承载需要传输的数据。发射机计算帧头和帧体上的FCS。接收端使用FCS来确认帧头和帧体是否被正确接收。

信息:该例子展示了WLAN MAC帧如何被解码。还展示了MAC帧如何聚合以及解聚合

WLAN工具箱支持MPDU解码有以下MAC帧类型:管理帧(信标帧)、数据帧(数据帧、空帧、QoS数据帧、QoS空帧)、控制帧(RTS、CTS、ACK、Block ACK)

创造一个MPDU:创建QoS数据帧,以下输入需要形成包含40字节有效载荷的非ht格式QoS数据帧

                创建MAC帧配置对象:调用wlanMACFrameConfig函数

                生成每个QoS数据帧的包含40字节有效载荷

                生成物理层配置:调用wlanNonHTConfig函数

                生成MPDU数据:调用wlanMACFrame函数

解码MPDU:调用函数wlanMPDUDecode函数

生成参数:MAC帧的解码配置参数、MPDU解码后的数据、解码状态(成功or失败)

A-MPDU解聚合:

一个A-MPDU是由多个MPDU聚合而成的。解聚合一个A-MPDU应该调用函数wlanAMPDUDeaggregate。该函数对给定的A-MPDU和相应的物理层配置对象进行处理,输出mpdu解聚合列表。该函数可以解码HT、VHT、HE-SU、HE-EXT-SU这四种类型的A-MPDUs数据。

创建一个A-MPDU帧:包含5个MPDU(QoS数据帧)的HE-SU数据类型的A-MPDU,每个MPDU包含40字节有效载荷。

                        生成MAC帧的配置:调用wlanMACFrameConfig函数

                        生成MSDU列表:包含五个mpdu的有效载荷(MSDU)的五元单元阵列。

                        物理层配置:MCS=3

                        生成A-MPDU帧:调用wlanMACFrame函数

A-MPDU函数解聚合:调用函数wlanAMPDUDeaggregate函数

生成参数:A-MPDU解聚合后的MPDU列表、A-MPDU解聚合失败的MPDU的数量、解聚合状态(成功or失败)

MPDU列表解码:调用函数wlanMPDUDecode

用MAC帧生成802.11ac波形

功能:如何生成包含适合执行无线电分组错误率(PER)接收器测试的MAC帧的IEEE®802.11ac™传输。

信息:WLAN Toolbox™可用于生成接收器测试的标准兼容波形。

被测设备(DUT)通常通过有线链路,用射频测试向量进行刺激。误包率(PER)是一个度量,用于测试在给定接收信号功率下,在存在噪声、干扰或其他损害的情况下接收器的性能。PER定义为被错误解码的数据包数除以传输的数据包总数。

MAC帧内的帧检查序列(FCS)用于确定MAC帧是否被接收方正确解码,从而确定数据包是否被错误接收。IEEE 802.11ac的通用MAC帧包含以下字段:帧头、帧体、FCS

要从更高层传输的数据包含在MAC帧的帧体中。发送器在MAC报头和帧体字段上使用循环冗余检查来生成FCS值。接收方计算CRC并将其与接收到的FCS字段进行比较,以确定在传输过程中是否发生了错误。

在本例中,产生一个由多个VHT格式数据包组成的IEEE 802.11ac波形。wlanWaveformGenerator函数可用于生成包含一个或多个数据包的波形。wlanWaveformGenerator函数为每个数据包消耗物理层服务数据单元(psdu),并执行适当的物理层处理以创建波形。使用wlanMACFrame函数可以生成一个包含MAC报头和有效FCS的PSDU。本例中合成了一个包含MAC包的多包基带波形。该波形可以下载到信号发生器进行射频传输,并用于接收机PER测试。

802.11ac VHT数据格式配置:

                        生成VHT格式数据包:调用函数wlanVHTConfig

                        修改函数中的参数:信道带宽、发射天线数量、数据流数量、MCS编码格式

波形生成配置:调用函数wlanWaveformGenerator(可以配置产生不同数量的数据包,以及每个包之间的空闲时间,还可以配置产生过采样或标称速率波形。)

                        函数中的参数:生成数据包的数量、包与包之间的空闲间隔、采样率、

                        随机加密

为每个数据包生成一个PSDU(物理层数据):A-MPDU被分隔和填充以形成物理层服务数据单元(PSDU),PSDU被编码和调制以创建传输数据包。 MPDU包含一个帧头、包含随机数据的A-MSDU子帧和有效FCS。返回的A-MPDU长度用APEP表示。为每个数据包生成一个PSDU,并将其连接到一个矢量数据中,以便使用wlanWaveformGenerator函数传输。

生成帧配置:调用wlanMACFrameConfig函数,QoS Data帧,VHT数据类型,可以聚合,1字节有8比特

生成基带波形:所有数据包(数据)的连接的PSDU位作为参数与VHT数据包配置对象vhtCfg一起传递给wlanWaveformGenerator函数。

                        生成波形:调用wlanWaveformGenerator函数

                        频率:调用wlanSampleRate函数

频谱分析仪:使用DSP System Toolbox spectrumAnalyzer工具库

使用射频信号发生器生成空中信号(模拟接收端测试)

802.11OFDM Beacon Frame Generation

 功能:如何使用软件定义无线电(SDR)平台生成包含适合基带模拟或空中传输的介质访问控制(MAC)信标帧的数据包。

信息:生成一个IEEE 802.11信标帧,通过Wi-Fi设备可以查看SDR发送的信标报文。

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

可以将生成的波形存储为基带文件格式。可以通过空中传输生成的波形,将信标数据包上转换为射频传输。无线电硬件可以在空中传输波形。

生成IEEE 802.11信标帧:STA(终端)根据“beacon Interval”字段中的“target beacon transmission time”(TBTT,目标信标传输时间),周期性地发送信标报文。可以调用wlanMACFrame函数,wlanMACFrameConfig函数和wlanMACManagementConfig函数一起生成信标帧。

                        配置SSID (network service set identifier)、信标间隔、工作频带和信道数量。

                        生成一个MAC信标体配置对象,设置SSID,信标间隔值:调用wlanMACManagementConfig函数

                        调用addIE函数添加目标地址参数信息元素(IE)到帧体中

                        生成信标帧配置对象:调用wlanMACFrameConfig函数

                        生成信标帧,以bit为单位:调用wlanMACFrame函数

                        计算指定工作频带和信道数量的中心频率:调用wlanChannelFrequency函数

生成IEEE 802.11信标报文:配置一个具有相应PSDU长度的non-HT信标报文,指定信道带宽为20MHz,发射天线1个,BPSK调制,编码速率为1/2(对应MCS索引0),通过wlanNonHTConfig对象。

                        生成non-HT信标报文:调用wlanNonHTConfig函数

                        生成一个被采样过的信标报文:调用wlanWaveformGenerator函数

                        生成波形的采样率:调用wlanSampleRate函数

把波形保存到文件里

利用SDR设备传输波形:利用SDR设备在空气中传输信标报文

                

为了破坏信号或降低波形的传输质量,可以调整发射机增益。该参数以dB表示,驱动无线电中的功率放大器。可以根据天线配置选择不同的值。为了增加增益,将参数tax . gain设置为0。对于默认增益,将参数“tax . gain”设置为“-10”。如果增益降低,请将“tax . gain”参数设置为“-20”。利用transmitRepeat函数将基带波形传输到SDR平台,然后将信号采样存储在硬件存储器中。然后,该示例在空中重复传输该波形,直到调用传输对象的释放方法。在命令窗口中显示消息,以确认传输已经成功启动。

总结和进一步拓展:结合OFDM Beacon Receiver Using Software-Defined Radio例子

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值