模块流程如图所示:
GNURadio中抓取WiFi信号的流程图中各个模块的功能:
- UHD: USRP Source: 使用此模块配置USRP硬件进行信号采集。设置频率、增益、采样率等参数。
- Complex to Mag^2: 将复数IQ数据转换为幅度的平方。
- Delay: 可以用于引入延迟,根据需要调整。
- Complex Conjugate: 对IQ数据进行复共轭操作。
- Multiply: 将原始IQ数据与其复共轭相乘,实现信号的平方幅度。
- Moving Average: 对平方幅度信号进行移动平均,以平滑信号。
- Moving Average: 另一个移动平均,可以根据需要调整参数。
- Complex to Mag: 将处理后的信号转换回幅度。
- Divide: 对原始IQ数据除以处理后的幅度,得到解调后的信号。
- QT GUI TIME Sink: 用于实时显示时域信号。
- WiFi Sync short: 使用此模块进行短前导同步,以找到WiFi帧的开始。
- Delay: 可以用于引入适当的延迟,以确保同步的准确性。
- WiFi Sync Long: 使用此模块进行长前导同步,以更精确地定位WiFi帧的开始。
- Stream to Vector: 将处理后的信号转换为向量形式,以便进行FFT处理。
- FFT: 对信号进行快速傅里叶变换,以将信号从时域转换为频域。
- WiFi Frame Equalizer: 对WiFi信号进行均衡处理,以消除信道效应。
- WiFi Decode MAC: 解码WiFi MAC帧,提取有关帧的信息。
- Wireshark Connector: 将解码后的WiFi帧信息发送到Wireshark进行分析。
- WiFi Parse MAC: 进一步解析WiFi MAC帧,提取所需的MAC层信息。
- PDU to Tagged Stream: 将解析后的信息转换为带有标签的流,以便在后续模块中使用。
- File Sink: 将解析后的数据保存到文件中,以便后续离线分析。
- QT GUI Constellation Sink: 可以用于实时显示信号的星座图。
上方的一系列模块是用来预定义参数的,设置参数默认值。
Category:Block Docs - GNU Radio
LimeSDR实验教程(5) WiFi解调_gnu radio 虚拟网卡-CSDN博客
流程图下载:
https://github.com/bastibl/gr-ieee802-11/files/6813359/wifi_rx_hackrf.zip