【WiFi识别】基于simulink建模实现IEEE802.11g 标准WiFi信号识别算法仿真

1.软件版本

matlab2013b

2.本算法理论知识

首先IEEE802.11g 标准的OFDM的帧结构如下所示:

关于802.11g,其基本的帧结构:

        短训练序列分为10段,每段长度为16个抽样点;长训练序列分为2段,每段长度为128个抽样点,总长度为160+256个抽样点。前导码之后是head和数据部分。

然后之前,我不知道是我讲错了,还是你听错了,长训练是精同步,短是粗同步。

        所以就是基本的帧结构如下所示:

短训练序列

....

短训练序列

保护

前缀

长训练

序列

长训练

序列

保护

前缀

Head

Data

       这里进行仿真,将完整的将数据帧(发送多帧,进行同步,并对最后的帧头位置输出使能信号,说明鉴定到了帧数据信息了。)

       然后在长码的前后两端,加入保护前缀

        从上面的仿真结果可知,短序列 ,由于序列较短,可以快速的得到相关峰,但是由于其峰值较小,所以容易收到噪声干扰,而长序列则相反。

        下面简单的介绍一下这个粗估计和精估计得过程:

        步骤一:首先进行粗估计,这个时候系统对输入的数据进行短序列相关,这里需要不断的进行相关,直到找到短序列为止。我们在进行估计的时候。在搜索到连续的相关峰值的时候,则认为找到了短序列的位置。根据OFDM帧结构,我们可以计算得到粗步估计下帧头的位置,但是由于短序列容易收到噪声的干扰,所以这个位置并不是准确的位置,一般会有几个采样点的偏差,这里我们转入精估计

      步骤二:假设由粗步估计得到帧头位置为INDEX,然后我们开始以INDEX-32的位置开始精估计,这样就节约了前面大量的搜索过程的计算了,然后以INDEX-32开始搜索,精估计,这个时候会得到两个相关峰的位置,我们取第二个位置,作为帧头计算位置,从而计算得到最后的帧头INDEX0位置。

3.部分源码

4.仿真结论

       其中短序列通过检测模块,当短序列检测到相关峰的时候,进行反馈,去检测长序列,最后的效果如下所示:

系统自动检测好了帧的起始位置A12-10。

猜你喜欢

转载自blog.csdn.net/ccsss22/article/details/125076532