基于RTL-SDR的软件无线电接收机设计

2018-05-11 00:53石剑蒋立平王建新
电子设计工程 2018年7期
关键词:谱估计基带调频

石剑,蒋立平,王建新

(南京理工大学电子工程与光电技术学院,江苏南京210094)

随着无线通信技术的发展,传统的通信系统由于对硬件的要求比较高,已不能满足现代通信系统多标准多体制的要求[1]。这时,一种新型的无线电应用思想软件无线电逐渐发展起来。根据定义[2]:软件无线电是一种新型的无线电体系结构,它通过硬件和软件的结合使无线网络和用户终端具有可重配置能力。软件无线电提供了一种建立多模式、多频段、多功能无线设备的有效而且相当经济的解决方案,可以通过软件的更新实现系统功能的变化。

最早的软件无线电平台是由美军研发的“易通话”系统[3]。其工作频带为 2 MHz~2 GHz,能够兼容美军15种以上的无线电平台。之后软件无线电得到迅速发展,但由于其设备价格高昂,一般的中小型企业和个人难以使用[4]。本文采用的RTL-SDR作为一款非常廉价的软件无线电接收机设备,非常适合个人的学习和使用。

1 RTL-SDR的硬件结构和功能

RTL-SDR是一个非常廉价的家用消费档次的USB接口的软件无线电接收机。它由Realtek公司的RTL2832U芯片和一个R820T调谐器组成。它能够接收周围空间中25 MHz到1.75 GHz之内的射频信号,并将其下变频到基带,从USB接口输出数字化的8位采样信号。其结构示意图以及工作流程如图1所示。

从图1可以看到,该接收机在内部共进行了两个流程:从RF到IF的模拟信号处理和从IF到基带的数字信号处理。

RTL-SDR的压控整荡器(VCO)的振荡频率可以由RTL2832U的I2C接口控制。设其频率为flo,则flo=fc-fif,其中,fif是中频频率,fc是待接收信号的载波频率。例如,当需要接收一个载波频率在400 MHz的信号时,需要将其下变频到基带。由于R820T的中频频率fif=3.57 MHz,故VCO的振荡频率为flo=400-3.57=396.43 MHz,[cos2π(400e6)t]×[cos2π(396.43e6)t]=[cos2π(3.57e6)t+cos2π(796.43e6)t]。混频后796.43 MHz的高频分量会被R820T的中频段低通滤波器衰减掉,只有3.57 MHz的中频分量会进入下一步的处理阶段。

图1 RTL-SDR信号处理过程

信号到达中频段后,其带宽约为6 MHz,通过AGC动态调整其幅度后,需要对其进行采样将其变为数字信号,采样频率为fadc=28.8 MHz,采样位数为8位。

采样后的数字信号经过数字正交下变频变换为基带信号。数字正交下变频即将信号分为两路,分别乘以与,用指数形式表示为。

为了进一步降低软件的计算压力,减少数据量,须对基带信号进行抽取,将其采样频率降低为约2.8 MHz(该采样频率可控)。最后,将这两路IQ数字信号从USB接口输出至计算机,由软件来进行数字信号处理(DSP)。

2 接收机的软件框架

为了方便使用,厂商已经提供了RTL-SDR的驱动程序和动态链接库。将RTL-SDR连接到计算机后,安装好驱动程序,直接调用动态链接库函数就可以控制RTL-SDR的各种参数,如采样频率,中心频率等。将采样数据通过USB接口传输到计算机后,即可以通过软件来进行各种数字信号处理。

随着技术的进步、多核处理器的发展以及语言的支持,计算机已经可以非常方便快捷的进行多线程编程[5],这对软件无线电来说具有非常重要的意义。软件无线电最大的一个问题是需要实时处理,这就对软件的算法和计算机的计算能力提出了很高的要求。而多线程编程通过并行处理,使软件的计算速度有了很大的提升。

本文所采用的软件无线电接收机框架如图2所示。可以看到,该框架总共分为4个流程,可以分别由4个独立的线程完成。线程1负责将接收机接收的数据放入缓存中,避免因后续处理速度慢而造成数据的覆盖缺失。线程2负责对原始数据进行预处理。线程3负责对信号进行功率谱估计并显示。线程4负责对接收到的FM信号进行解调并输出。

图2 接收机软件处理框架

3 FM广播解调接收

3.1 功率谱估计

FM广播在世界上的大部分国家都有相同的标准,其频率范围为88~108 MHz,每个电台的频带宽度为200 kHz。而RTL-SDR的采样频率为2 MHz以上,所以输出到计算机的数字信号中包含有多个FM无线电台的信号,这可以通过实时的功率谱监视窗口看到,如图3所示。当前设置的中心频率为97.5 MHz,采样频率为 2.4 MHz。

所采用的功率谱估计算法需要兼顾准确性与实时性,文中采用的算法为Welch法[6-7],即加窗处理与时域平滑相结合的方法。先对信号进行重叠的分段,为了减小方差,Welch建议有50%的数据重叠。然后对每一段信号进行加窗处理,利用周期图法求出每一段的功率谱估计。最后将所有的功率谱估计取平均得到最终的功率谱估计。Welch法可以很好的改善谱估计曲线的平滑性,并提高谱估计的分辨能力[8]。

图3 功率谱估计显示窗口

3.2 正交下变频

无论是从功率谱估计显示窗口(上方)还是时频显示窗口(下方)都可以看到,在当前的频带范围到即96.3 MHz到98.7 MHz内,有两个电台正在进行广播,中心频率分别是97.5 MHz和96.9 MHz。需要说明的是,这两个中心频率是通过计算得到的,RTL-SDR输入到计算机的是基带信号,所以这两个频率对应的为0 Hz和-0.6 MHz。当选择中心频率为96.9 MHz的电台时,需要将其基带中心频率搬移到0 Hz,即将接收到的信号乘以,其中,fb为信号的基带中心频率,在这里等于-0.6 MHz,fs为采样频率,等于2.4 MHz,n为接收到的数字复信号的下标。

3.3 抽 取

采样频率为2.4 MHz,而FM电台的频带宽度为200 kHz,为了不影响信号所携带的信息而尽可能地降低数据速率,需要进行12倍抽取。抽取之前,需要进行滤波来滤除其它电台以及防止频谱混叠[9]。本文的抽取结构中,采用多个半带滤波器级联加FIR滤波器的结构,如图4所示。

图4 抽取结构

半带滤波器的幅频响应如图5(a)所示,而FIR滤波器的参数需要可控以满足不同的抽取要求。利用窗函数设计法[10]来生成FIR滤波器,理想低通滤波器的冲激响应为,其为无限长序列,且是非因果的,需要利用一个窗函数来截断,该窗函数和滤波器阶数可由软件控制。图5(b)为生成的用来进行3倍抽取的FIR滤波器。

图5 滤波器幅频响应

3.4 FM解调算法

调频信号的表达式如下所示:sfm(t)=Accos(ωct+θfm(t)),如调制信号为单音信号si(t)=Aicos(2πfit),则:

其中,Δf称为最大频偏,βfm称为调频指数。

FM广播中规定最大频偏Δf为75 kHz,最高调制频率fi为15 kHz,故调频指数βfm=5。由调频指数可以看到FM广播使用的是宽带调频(WFM),由卡森公式[11]BFM=2(βfm+1)fi可以计算得到FM信号的频带宽度为180 kHz。

FM解调有多种方法,文中采用如图6所示解调方法[12]。设RTL-SDR接收到的信号为,其中ωΔ是由于本振与载波频率不完全同步而残留的频偏。两支路输出分别为。两路相乘取幅角后,输出为sd(t)=-{[ωΔt-ωΔ(t-τ)]+[θfm(t)-θfm(t-τ)]}。当τ非常小时,,若忽略由ωΔ产生的很小的直流分量,其正比于调制信号,可作为解调输出。

图6 FM解调示意图

3.5 调频立体声

Edwin Armstrong在1934年就提出了频分复用的概念[13],1961年之后,开始在FM广播中使用起来,出现了调频立体声[14]。FM调频立体声广播频谱分布如图7所示,声音分为左声道L和右声道R,频率都在50 Hz~15 kHz。两个声道相加减形成和信号(L+R)和差信号(L-R),差信号由38 kHz的载波进行抑制载波的双边带调制,然后和和信号相加作为FM调频立体声的基带信号。

图7 FM调频立体声频谱结构

调频立体声的解调首先需要提取出导频,利用一个带通滤波器即可。本文设计的带通滤波器如图8所示,采样频率为200 kHz。提取出滤波后的导频信号后,利用锁相环将其相位同步[15],提取出相位并翻倍后可得到38 kHz的载波信号,其用来解调差信号(L-R)。得到基带的和信号和差信号后,由于其最高频率为15 kHz,须对其进行抽取,进一步降低采样速率。将解调得到的和信号和差信号相加除以2便得到左声道,相减除以2便得到右声道。

3.6 去加重

FM广播中传送的语音信号和音乐信号的能力一般主要集中在低频端,在调制频率高频端的信号功率谱密度较小,而噪声的功率谱密度却比较大。为了改善解调得到的输出信噪比,在FM调频系统中一般都采用了预加重与去加重的措施[16]。预加重即在信号频率大于某个固定频率时,给其一个线性的增益。该固定频率在美国地区为2 122.1 Hz,在亚洲和欧洲地区为3 183.1 Hz。去加重只需要在相应频率处给其一个相应的衰减即可。

最后,将解调后的信号输出到计算机的声卡驱动程序,即可以收听到FM广播。

图8 导频提取滤波器频率特性

4 结束语

软件无线电是未来通信系统发展的趋势,文中利用RTL-SDR软件无线电接收机,在Windows环境下搭建了适用于该接收机的软件框架,并以FM广播信号为例,完成了FM广播信号的接收与解调。软件的可扩展性可以赋予本系统更加完善的功能。为了使软件更加智能化,可以处理更多的信号,本文拟将现有的调制方式的解调方法做成一个个的模块,在接收到信号后,先对信号的调制方式进行识别,识别之后可自动调用该调制方式的解调模块完成信号的处理。

参考文献:

[1]饶玲俐.基于GNU Radio和RTLSDR软件无线电的FM广播解调接收[D].武汉:华中师范大学,2015.

[2]向新.软件无线电原理与技术[M].西安:西安电子科技大学出版社,2008.

[3]陶玉柱,胡建旺,崔佩璋.软件无线电技术综述[J].通信技术,2011,44(1):37-39.

[4]费丹,熊磊,吴建强.基于软件无线电的无线信道仿真仪设计与实现[J].仪器仪表学报,2013,34(12):93-98.

[5]眭俊华,刘慧娜,王建鑫,等.多核多线程综述[J].计算机应用,2013,33(S1):239-242.

[6]伊鑫,曲爱华.基于Welch算法的经典功率谱估计的Matlab分析[J].现代电子技术,2010,33(3):7-9.

[7]杨晓明,晋玉剑,李永红.经典功率谱估计Welch法的Matlab仿真分析[J].电子测试,2011(7):101-104.

[8]邓泽怀,刘波波,李彦良.常见的功率谱估计方法及其Matlab仿真[J].电子科技,2014,27(2):50-52.

[9]楼才义,徐建良,杨小牛.软件无线电原理与应用[M].北京:电子工业出版社,2014.

[10]程佩青.数字信号处理教程[M].北京:清华大学出版社,2008.

[11]樊昌信,曹丽娜.通信原理[M].北京:国防工业出版社,2008.

[12]Robert W.Steward,Kenneth W.Barlee,Dale S.W.Atkinson,Louise H.Crockett.Software Defined Radio using MATLAB&Simulink and the RTL-SDR[M].Glasgow,Scotland,UK:Strathclyde Academic Media,2015.

[13]L.Lessing.Man of High Fidelity:Edwin Howard Armstrong[M].New York City:Bantam Books,1969.

[14]朱良贵.谈谈调频立体声广播接收机[J].电子技术,1980,18(11):16-20.

[15]王晓玲.双声道调频立体声广播系统仿真设计与分析[J].实验室研究与探索,2015,34(11):129-132.

[16]崔尚平.调频广播中预加重和去加重问题的讨论[J].甘肃科学学报,2001,13(3):76-82.

猜你喜欢
谱估计基带调频
考虑频率二次跌落抑制的风火联合一次调频控制
基于MATLAB实现的AR模型功率谱估计
调频发射机技术改造
调频激励器干扰的排除方法
经典功率谱估计方法的研究
2014年LTE基带收益占蜂窝基带收益50%以上
AIS基带信号的接收与处理
调频引信中噪声调幅干扰的自适应抑制
Welch谱估计的随机误差与置信度
数字基带系统的System View仿真设计