1、引言
上次我们已经完成了USRP X310和SDR软件的安装,这一篇的主要任务是利用GQRX进行查看频谱和记录数据。
利用GQRX和USRP研究SDR的主要流程如下:先通过查看频谱确定感兴趣的信 所在频率;然后在GQRX主界面上将目标频率设置为设备的中心频率;对于AM、FM、CW等模拟信 ,GQRX可直接解调并播放声音;对于无法直接解调的信 ,利用GQRX的IQ记录工具将原始信 保存成文件,以便后续的离线分析。
2、查看频谱
2.1 频谱概念
时域(波形)和频域(频谱)是最常见的两种表征信 的方式,大多数信 处理也都在发生在这两个领域内。傅里叶变换是沟通时域和频域的工具:
利用傅里叶变换,可以从信 随时间的变化f(t),得到信 在频域的分布F(w),反之亦然。
频谱是将F(w)可视化后的结果,准确的说应该是功率谱P(w),反映了在哪个频率上有多大能量的信 在发射。
常见的显示方式有二维频谱(频谱图,spectrum)和三维频谱(瀑布图,waterfall)。频谱图的横坐标是频率,单位一般为MHz,kHz,Hz,纵坐标是表示信 能量大小,单位一般为dBFS(满量程分贝)。瀑布图的横坐标为频率,纵坐标为时间,用颜色表征信 强度。
大部分频谱监视软件包括GQRX都具有这两种模式。
2.2 GQRX频谱设置参数
2.2.1 FFT点数
每次参与FFT计算的样本数,一般为2的整数次幂,如256,512,1024…,65536等。FFT点数决定了生成频谱的频率分辨率。对于宽带数据,FFT点数越多,生成的频谱越清晰细致。但对于窄带信 ,过大的FFT点数反而会让生成频谱模糊。这是因为功率谱计算(即短时傅里叶变换)基于信 的周期性,如果设置的FFT点数与实际信 不一致,就会导致频谱的模糊。
例如用Adobe Audition分析一个44.1kHz的音频文件,人发音的一个音节持续时间约为20毫秒,那么FFT点数应当与44100*20/1000=882相当。
另外FFT点数越多,计算压力越大,对机器配置要求越高。
2.2.2 FFT速率
也叫FFT帧速率,即每秒钟进行运算FFT的次数,GQRX下一般为设置为30Hz至50Hz。RTSA模式下的帧速率成千上万,一般由硬件实现。
FFT速率决定了生成频谱的时间分辨率,FFT速率越高,单位时间内的帧越多,时间轴的分辨率越清晰。但是过高的FFT速率会让一个本来只出现在一帧中的事件拉长至若干帧之中,产生时间扩散效应,造成信 时间轴边缘模糊,见泰克公司的图片和文章解读频谱分析中100%POI的误区。
2.2.3 其他参数
其他调节频谱显示的参数还有:窗函数类型,功率谱的基准和范围、曲线平滑、最大最小保持、缩放平移等,运行GQRX时可随时更改这些参数并查看效果。
2.3 实际接收效果
利用GQRX接收FM广播和航空频段:
3、复信
3.1 引入复信
现有的绝大部分SDR设备输出的原始信 数据为IQ数据,即复信 。这里对复信 这一概念进行简单说明。关于复信 理论的详细了解可参考Richard G. Lyons的《Understanding Digital Signal Processing》第8章,以及John G.Proakis《数字通信》第二章。
信 处理中为什么要使用复信 角坐标系下,复数同时具有实部和虚部,在极坐标系下,同时具有幅度和相位。因此,复数天然的适合描述与振动和波相关的物理现象。信 处理正属于这种理论。复数早就存在于信 处理理论中,只不过在数字电路发明之前实现起来较为复杂。而在集成电路和DSP发明之后,信 处理的工程师们可以更加直接的、彻底的来实现这些理论。
复数在电路分析和电气工程中应用的更早。斯泰因梅茨(Charles Proteus Steinmetz)在1893年7月美国电气工程师学会会议上发表了开创性论文《复数及其在电气工程中的应用》,使交流电路理论和分析发生了革命性的变化。他系统化地使用复数相量表示在电气工程教育文本中,其中小写字母“j”用于指定交流系统分析中的90度旋转算子。他的开创性著作和许多其他论文“教了整整一代工程师如何处理交流现象”。复数在强电上好使,自然也能用在弱电上了。
有的说法认为实信 是“实际上”存在的信 ,复信 不是。这是误解。实数和复数都是数学概念,不存在一个比另一个更“实际”。如果说“实际”是指能够传输,那么你可以用两根同轴线,将一个基带信 的实部和虚部同时从一楼传到二楼,这样看复信 也很“实际”。其实对于OFDM信 ,我认为就是在直接传输复信 ,而且是多路并行的复信 。
3.2 一些名词
通信系统历史悠久,随着技术的发展,一些名词和术语在不同场合经常具有不同含义,例如调制和解调。模拟时代的调制其实同时包含两项工作:一是映射,即根据消息信 改变载波的幅度、相位、频率其中一种或几种属性;二是实现频谱搬移,以适应无线信道特性。在数字信 处理广泛应用后,这两部分被明确的分开了。频谱搬移主要由射频部分在ADC之前完成(根据架构的不同,ADC之后也可能会有一点),调制解调等信息处理主要由DSP以数字形式完成。具体过程如下,在发送端,DSP实现信 处理算法,将消息信 (低频实信 )映射为已调信 (基带复信 ),然后经DAC和射频部分转换为射频信 ,再经过天线发射到空中;在接收端,天线接收的射频信 由射频部分和ADC完成下变频,得到基带信 ,然后送入DSP解调,得到消息信 。
本系列中,消息信 和已调信 这两个名词主要关注消息映射的过程,而基带信 和射频信 主要关注频谱搬移。以发送端为例,说明下列名词的含义:
- 消息/调制信 (message/modulating signal):在模拟时代,通信终端直接面向人,包含具体信息的信 (如声音和图像)可以直接作为消息信 ,或者经过简单处理即可作为消息信 。在数字时代,通信终端直接面向计算机,声音、图像、文字等信息需要在计算机中经过采样编码、应用层、传输层、 络层、链路层等过程,然后输入通信终端完成物理层处理,人已经无法直接理解和产生这些消息信 。
- 已调信 (modulated signal):使用消息改变载波某些属性后的结果。在模拟时代,产生的已调信 一般是通带实信 。在数字时代,已调信 主要由DSP产生,一般是基带复信 。
- 基带信 (baseband signal):零频附近的信 。在模拟时代,基带信 一般就指消息,是实信 。在数字时代,基带信 一般指DSP输出的已调信 ,是复信 。
- 通带/射频信 (passband/RF signal):在空中传播的信 、天线发送和接收的信 。在模拟时代,已调信 已经是通带信 。在数字时代,DSP输出的已调信 由DAC完成转换,得到通带信 。
3.3 复信 的产生
下图是一个中心频率为
那么从通带信 到基带信 总共分几步两步。
第一步,把通带信 的位于纵轴左侧的那一半频谱滤除,得到一个新的频谱,如下图所示。很明显,这个频谱不再具有对称性,因此是一个复信 。这个信 称为通带信 的解析信 (analytic signal),也叫预包络(pre-envelope)。
第二步,将解析信 进行混频,将频谱向左移动
4、记录IQ数据
通过GQRX的存储的信 文件只包含原始数据,没有任何元数据信息。记录时间、中心频率、采样率等元数据都写到文件名中。默认的文件名格式为gqrx_日期_UTC时间_中心频率_采样率_fc.raw。例如:
gqrx_20211013_064329_94500000_250000_fc.raw
文件名中的fc表示float complex,与gnuradio的cf32(complex float 32bits)格式相同。其他常见的格式还有cs16(complex signed 16bits),cs8(complex signed 8bits),cu8(complex unsigned 8bits)等。每个复信 样本包含实部(也叫同相In-phase)和虚部(也叫正交Quadrature),实部和虚部各自是一个32bits的浮点数,所以一个样本的长度为64bits。文件中样本的存储格式类似双声道wav文件:
I0 Q0 I1 Q1 I2 Q2 ……
得到IQ原始数据后,后续的主要工作便是围绕这些数据开展。下一篇将录制和分析最简单的AM和FM模拟信 。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!