王 洪,陈祝明,郭睿刚
(电子科技大学 电子工程学院,成都 611731)
·实验技术·
基于软件无线电平台的频谱感知实验设计
王 洪,陈祝明,郭睿刚
(电子科技大学 电子工程学院,成都 611731)
频谱感知是感知无线电、动态频谱分配和电子侦听的核心,具有通用性的频谱感知实验可应用于相关的多门课程,在软件无线电平台上设计的频谱感知实验可编程重构,适用于较宽频段和多种信号。该文介绍了USRP与GNU Radio结合的软件无线电平台,讨论了频谱感知的基本原理,设计了基于能量检测的频谱感知实验,并以城市调频广播为例演示了频谱感知实验的过程和结果。
软件无线电;通用软件无线电外设;频谱感知;能量检测
数字信号处理技术的成熟和以摩尔定律快速研制的大规模数字集成芯片,使无线电系统实现了模拟到数字的演变,并在数字化的基础上,发展到可重构、易互通、编程实现主要功能的软件无线电。在软件无线电理念下设计的通用平台已在工程和科研上广泛应用,并被国内外大学开始引入本科生和研究生的教学中。另一方面,无线技术快速发展和其具有的优势,产生了各种各样的无线应用,由此电磁频谱十分拥挤。在2000年提出的感知无线电,其核心便是灵活利用主用户没有使用的闲置频谱。近年来,动态频谱分配作为独立的研究主题,在国内外引起广泛关注。在军事领域,监听敌方电磁活动也是永恒的主题。无论是感知无线电、动态频谱分配、军事侦听,还是民用的频谱管理与监测,都首先要实现频谱的感知。对不同频段、不同应用,已知和未知信号的检测与分析便是频谱感知的主要任务。频谱感知是现代通信技术、电子对抗技术、软件无线电技术等专业课程的共同主题,因此,有必要开发频谱感知的实验,适应这些课程的共同需求,加深学生对频谱资源的感性认识。
USRP(Universal Software Radio Peripheral)是美国NI公司的一款软件无线电硬件平台,被斯坦福大学、德克萨斯大学奥斯汀分校、弗吉尼亚理工大学和上海交通大学等名校引入实验教学中,取得了很好的效果,并在斯坦福大学成为受学生欢迎的课程之一。在软件无线电平台上开发的频谱感知实验具有多样性和灵活性,可适应各专业课程对不同频段、不同方法、不同信号的需求。本文在该平台上开发出具有通用性的频谱感知的实验,可应用于通信原理、无线通信、数字通信、软件无线电技术和电子对抗等课程的实验教学。
USRP,也叫通用无线电外设,最初是为GNU Radio软件研制的硬件平台,该软件源自美国麻省理工学院的Spectrumware项目,2005年成立EttusResearch公司专门研制生产USRP的系列母板、射频收发子板、简易多频段天线和驱动程序。2005年,该公司被NI公司收购,实现了与NI公司LabVIEW软件的互联,由于GNU Radio软件和USRP的开源性质,众多第三方机构为其开发了应用模块。Mathworks公司的Matlab软件也提供了USRP的软件开发工具箱[1]。本文的实验将采用GNU Radio软件。
USRP通用软件无线平台与计算机连接,GNU Radio软件安装到计算机上,配上收发天线,便构成一套完整的软件无线电收发体系,如图1所示。USRP由母板和子板构成,母板完成A/D或D/A转换,母板上的FPGA实现接收和发射中的常见信号处理操作,如数字变频、增加或降低采样频率等;子板上则实现射频端的发送和接收功能,一个母板可接两个子板,以构成收发双工系统,多个母板可以级联成MIMO系统。GNU Radio软件实现各种基带信号处理、数据打包、信号的分析、显示等操作[2]。
图1 USRP与GNU Radio构成的软件无线电通信系统示意图
USRP母板上有4个高速模拟数字转换器和4个高速数字模拟转换器。最新款的X系列上ADC采样频率可达200 MS/s,采样位数为14 bit;数字模拟转换器DAC采样频率可达800 MS/s,采用位数为16 bit。母板通过USB或者以太网口连接至计算机,以实现平台与计算机之间的通信。4个ADC输入和4个DAC输出通道也可以通过配对变成两个复输入和两个复输出通道实现复采样,具有很大的灵活性。
USRP的子板分为单独收发子板和收发一体子板。单独收发的子板有:Basic TX和Basic RX覆盖频率范围为1~250 MHz;LFTX和LFRX子板覆盖频率范围为30~250 MHz;TVRX2子板覆盖频率范围为50~860 MHz;DBSRX2子板覆盖频率范围为800 MHz~2.4 GHz。收发一体子板有:WBX子板覆盖频率范围为50 MHz~2.2 GHz;SBX子板覆盖频率范围为400 MHz~4.4 GHz。此外还有XCVR2450、RFX900、RFX1200、RFX1800、RFX2400等子板,覆盖频率从几百兆到几千兆不等,功率也在50~200 mW范围内[3]。
GNU Radio因其开放性和低成本,拥有很多用户。它的信号处理模块是使用C++编写的,而其高级的组织连接和联合操作都由python实现。作为一款开源软件,GNU Radio不仅提供了很多常用的信号处理模块,还具有简单明了的GUI界面(Gnuradio-companion),这为不熟悉python语言编程的用户提供了方便。Gnuradio-companion中有用于信号处理的blocks,如source类型的波形源、随机变量源等,modulate类型的FM mod、FM demod、PSK mod、PSK demod等各种调制解调方式blocks,以及filter类型的低通、带通、高通滤波器等。此外,Gnuradio-companion还提供USRP的sink和source blocks用于从USRP上接收和发送数据,与USRP无缝连接形成软件无线电系统。学生可根据自己需求选择blocks,设置参数,然后连接相应的输入输出口完成无线电系统的建模。学生还可以根据需要,用C++编写模块,在GNU Radio中完成自己的信号处理任务。
该实验的目的是给出通用的频谱感知设计过程,适合较宽频段范围内的宽带和窄带信号,且适合信号形式已知或未知的状况,学生对设计的实验有可操作性。为此,实验选择了覆盖频段较宽的WBX子板(可感知50 MHz~2.2 GHz范围内的频谱使用状况),检测部分采用容易掌握的能量算法,构造的监测系统中部分模块可重构。作为实例,本文以87~108 MHz的城市调频广播信号为对象,给出了感知的过程和结果。
2.1 频谱感知原理
频谱感知技术的功能是无线电通信系统感知周围频谱的使用情况,发现未在使用的频谱,并反馈给决策层,让决策层决定是否占用该频段。同时还要实时、持续感知,保证在授权用户出现后,未授权用户可以做出及时避让,切换到其他未使用频段,以免造成对主用户的干扰。具体过程如图2所示。
频谱感知的主要方法有能量检测法、匹配滤波检测法、循环平稳检测法和小波检测法等。能量检测是频谱感知技术中最常用的方法,因其计算复杂度低,易于实现而得到广泛使用。它是一种非相干检测法,适用于任何信号,不需要传输信号的先验信息,可以直接通过接收到的一定带宽内的信号能量大小来判断信号的存在。
图2 频谱感知的具体任务框图
能量检测法按信号的处理方式不同又可以分为时域检测法和频域检测法。时域检测法是指对输入信号在时域上进行采样,然后取N点信号的模平方和。频域检测法则是指对输入信号进行N点FFT,将信号从时域转换到频域,然后对N点FFT后信号取模平方和。根据这两种求能量方法的结果,学生也可以同时验证帕斯瓦尔定理。
以时域检测法为例建立如下输入信号模型:
式中,s(t)为传输信号,n(t)为加性高斯白噪声信号。在没有信号的纯噪声环境下,有:
检测统计量U为接收到的信号的能量(这里只存在噪声能量Un),n[k]为采样后的噪声值。检测统计量服从自由度为M的卡方分布。在恒虚警的前提下有:
假设虚警概率为pfa,根据式(4)可得检测门限:
因此有检测判决式:
式(2)采用的时域序列,若替换为频域序列,根据帕斯瓦尔定理,检测的原理相似。
2.2 实验设计
频谱感知算法在软件无线电平台上的实现框图如图3所示。
图3 频谱感知过程
首先,要分析监测的对象。若是已知信号,中心频率是多少,是宽带还是窄带,是间歇脉冲信号还是连续信号;若是未知信号,则需在检测之前,跳变多个窄带频段,根据当前设置寻找无信号的频段,作为阈值和增益的设计依据。然后,设计主要参数,包括增益、子板工作频率、滤波器、采样率、采样时间窗和检测算法。最后,设计监测结果的显示形式,可给出统计直方图,或瀑布图展示频谱占用与时间的关系,或典型时刻的快拍图。设计完成后,选择相应的GNU Radio模块;而检测算法部分则需编写程序,整个系统在USRP N210母板和WBX子板上实现,天线则选择覆盖3个频段的VERT400。
2.3 设计实例
下面针对成都市城市FM广播信号进行感知,利用能量检测法对广播信号出现的频段、时间,以及强弱等情况进行分析。
1)信号特点
城市广播信号占据的频段为87~108 MHz,信号带宽为150 kHz,最大频偏为±75 kHz,每个频段保留25 kHz的安全间隔。以成都市为例,它主要的几个广播频道有88.2、91.4、94.6、99.6、102.6、103.2、105.1 MHz等。
2)参数设计
接收信号的增益为10 dB,采样频率为1 MHz,频偏滤波器的范围为-75~75 kHz,低通滤波器截止频率设置为75 kHz,取512个采样点数对信号进行分析。
3)实现
对接收到的信号进行放大并带通滤波,增益为10 dB,滤波器的中心频率设置为87~108 MHz,再根据接收信号的频谱图进行频率修正处理(在±75 kHz之间修正,使显示的能量尽可能达到最大)。然后让信号经过低通滤波器,对滤波后信号进行能量检测、判决以及结果显示。在GNU Radio中构建的系统如图4所示。
图4 GNU Radio中的原理框图
图4中主要模块的功能如下。
1)USRP Source模块可以设定接收增益、采样频率以及接收信号的中心频率,另一个功能是在接收信号的同时对信号进行带通滤波,并将中心频率附近宽度为fs/2的信号搬移到基带。
2)Frequency Xlating FIR Filter模块用来设置频率偏移,由于FM广播信号最大频偏为±75 kHz,将该滤波器的中心频率仍设置为变量,范围为-75~75 kHz。在检测过程中,可以根据Waterfall图显示的能量分布来实时调整频偏。
3)Low Pass Filter为低通滤波器模块,FM广播信号的带宽为150 kHz,这里设置滤波器截止频率为75 kHz。
4)Complex to Mag^2和Threshold模块分别对信号求模平方和计算门限大小。
5)WX GUI Scope Sink模块用于显示结果。
图5 监测结果图
图5为图4中WX GUI Waterfall Sink模块的瀑布图,横坐标为频率,纵坐标为时间。可见在103 MHz频点附近(102.6 MHz和103.2 MHz处)存在两个能量较强的信号,这两个频点就是成都市FM广播的两个典型频率。
本文讨论了由USRP和GNU Radio构成的软件无线电平台上设计频谱感知实验的方法。对USRP的由来、特点、子板、母板和软件分别作了介绍,给出了基于能量检测的频谱感知原理,结合感知的原理,讨论了频谱感知实验的设计方法,最后,以城市调频广播为例,给出了设计的过程和感知的结果。该实验可用于频谱感知和频谱管理的相关课程。
[1]黄凌.基于GNU Radio和USRP的认知无线电平台研究[D].广州:华南理工大学,2010.
[2]王洪,陈祝明,孙清清.基于USRP和GNU Radio的《软件无线电》课程实验[J].实验科学与技术,2013,10(4):99-103.
[3]BLOSSOM E.Exploring GNU radio[EB/OL].(2004-11-29).[2013-01-28].http:∥www.gnu.org/ software/gnuradio/doc/exploring-gnuradio.html.
[4]SARIJARIMA,MARWANTOA,FISALN,et al.Energy detection sensing based on GNU radio and USRP:An analysis study[C]//2009 IEEE 9th Malaysia InternationalConferenceonCommunications.[S.l.]: IEEE,2009:338-340.
[5]KIMJY,MARCUMAC,BALMOSAD,et al.Implementation and analysis of energy detection-based sensing using USRP/SBX platform[C]//Military Communications Conference(MILCOM). [S.l.]:IEEE,2014:1504-1509.
[6]曹俊杰.基于GNU Radio和USRP的认知无线电频谱感知技术研究[D].陕西:西安电子科技大学,2014.
[7]MUKHERJEE A.Advanced energy sensing techniques implemented through source number detection for spectrum sensing in cognitive radio[M].Advances in Intelligent Systems&Computing,2015: 179-187.
Design of Spectrum Sensing Experiment Based on SDR Platform
WANG Hong,CHEN Zhuming,GUO Ruigang
(School of Electronic Engineering,University of Electronic Science and Technology of China,Chengdu 611731,China)
Spectrum sensing is the core of cognitive radio,dynamic spectrum distribution and electronic reconnaissance.Universal experiment of spectrum sensing can be used in many relevant courses.Spectrum sensing experiment can be reconstructed by programming and be applicable to wide frequency range and signal diversity.This paper introduces the software platform with USRP and GNU Radio first.Then basic theory of spectrum sensing is discussed.We design experiments based on energy detection.Finally,frequency modulation broadcasting in city is chosen as an example to show the procedure and results of spectrum sensing.
software radio;universal software radio peripheral;spectrum sensing;energy detection
TN014
A
10.3969/j.issn.1672-4550.2016.05.005
2015-08-15
国家自然科学基金(61139003)
王 洪(1974-),男,副教授,主要从事软件无线电,雷达信号处理和民用航空电子技术方面的研究。