基于GNURadio分段差分双阈值的宽带信号检测技术研究与实现*
2018-09-29李晓光潘克刚王鹏伟
李晓光,潘克刚,杨 群,王鹏伟
(1.中国人民解放军陆军工程大学 通信工程学院,江苏 南京 210007;2.中国人民解放军77608部队,江苏 南京 210007;3.中国人民解放军61486部队,上海 200072)
0 引 言
为了应对复杂环境下非合作通信宽带接收带来的挑战,能量检测法由于不需要任何的先验信息和较低的运算复杂度得到了广泛应用。Rui Gao等人[1]基于划分频谱的思想,将子带能量和整段频谱能量比值作为检验统计量,有效解决了噪声不确定性。文献[2]将子带能量做差分运算,利用双阈值检测,解决了不平坦色噪声的影响问题。
本文给出窄带差分双阈值(Narrowband Differential Dual Threshold,NDDT)算法,而该算法不要任何的先验信息。由于色噪声在一定范围内具有连续性,故对宽带信号进行分段采集处理,克服了色噪声的影响;利用差分双门限,提高了检测信号个数的稳定性;通过增加切分调整单元,进一步提高了宽带信号检测的鲁棒性。下文首先给出算法模型,其次给出算法实现步骤和流程图,再次推导算法的表达式并实验仿真,最后基于GNURadio软件平台实现工程系统。
1 系统模型
将宽带分为M个窄带,宽带信号带宽为BW,窄带信号带宽为BN,则M=BW/BN。假设宽带信号W(t)经过分段为窄带后V(t)的时域表达式为:
式中N表示窄带包含的信号个数,h(t)表示信道响应,ri(t)表示一个窄带所含第i个信号,n(t)表示信道噪声,i(t)表示设备噪声,则Ri(t)表示第i个信道响应信号,N^(t)表示由信道和设备综合影响下的色噪声。其中,Ri(t)与N^(t)相互独立。
对于宽带信号频域,可以用二元假设H0和H1分别表示每个窄带是否空闲。于是,有:
考虑到实际宽带信号受到恶劣无线信道和非线性设备信道的影响,会造成噪声在频域能量不平坦噪底的高斯色噪声N^(t)。为了考虑不同信道,高斯噪声信道下信道响应h(t)设为常数。对于衰落信道,h(t)是时变的随机变量。本文对衰落信道影响暂不予考虑。
2 宽带信号检测方法
如图1(a)所示的宽带信号,在色噪声环境下,如果噪底门限和判决阈值不合理,单阈值FCME算法[3]会存在漏检和虚警,即使选取较好的检测算法,也会影响检测能力。
如图1(b)所示,如果采用将宽带信号分段为多个窄带信号,即使采用能量检测法这种复杂度较小的算法合理选取各窄带噪声门限和判决阈值,也会大幅提升对宽带信号的检测效果。只要合理选择窄带带宽,窄带噪底即使不平坦,其变化幅度也很小,可以忽略噪底变化的影响,可将色噪声模型转换为高斯噪声模型。只是由于宽带噪底的变化,各窄带噪声门限将有不同,这样对各窄带范围内的信号判定阈值也会不同,即各个窄带独立判断。采用Welch功率谱估计算法,由于其算法复杂度低、计算量较小,可以满足实时采集处理的要求,同时信道相应也接近于高斯信道响应。所以,为了避免不必要的归一化问题,不妨设,将大大简化计算。
图1 变化噪底的宽带信号频谱
本文采用窄带差分双阈值(NDDT)算法,既有效避免了统计各窄带信号的噪声门限,又可以完成频带范围定位,通过范围可以粗略推算各子信号的带宽和中心频率。一个带宽较大的信号可能被切分至相邻的两个窄带上,从而造成信号检测个数紊乱。因此,算法要考虑如何调整切分至两个相邻窄带的问题。
2.1 NDDT检测步骤
图2给出了算法的整个计算流程图。
图2 检测流程
具体步骤如下。
第一步:将宽带信号通过设置频偏和滤波器进行窄带信号分割,依次对M个窄带进行采样,并对每个采样数据连续读取P帧,其中每帧数据采样点数为Q。对接收到的信号进行Welch功率谱估计,取一半的频率点,那么对第k(k=1,2,…,M)个窄带的P帧数据进行平滑,得功率谱估计G(k):
第二步:取数据的平均值,得到窄带功率谱均值S(k),然后与差分双阈值进行比较,完成信号初检测,其中阈值为:
式中Pf(k)是第k段窄带虚警概率,Q(·)为误差函数,Q-1(·)是逆误差函数,σ2(k)为第k段窄带噪声功率,M是分段数,P是时域平滑帧数。双阈值为数值大小相等符号相反的两个值(令S(0)=0):
第三步:信号切分现象,如图3所示,依次取当前第k+1个窄带第一个已检信号(如果存在)和第k个窄带最后一个已检信号(如果存在),通过比较两个窄带信号与中间带宽的能量,构建检测统计量,然后与阈值比较,根据情况判断是否被切分。如果是,则信号合并,流程图如图4所示。
第四步:NDDA算法同时给出信号个数和每个窄带信号频带范围定位,最终完成整个宽带信号的检测。
为了减少系统开销,按照窄带序号(如图4所示),信号切分调整后释放第k个窄带数据,再读取第k+2个窄带数据依次进行检测和调整,直到最后一段数据处理完。
图3 信号被切分
图4 信号切分调整处理流程
2.2 仿真实验及性能对比
对图1(a)所示的色噪声环境下的宽带信号进行仿真处理,信号带宽20 MHz带宽范围内存在22个信号,调制方式集合为{BPSK、QPSK、8PSK、8QAM},信噪比在2~11 dB,信号带宽为200 kHz~1 MHz。窄带信号带宽为4 MHz,窄带个数分为5个。
在高斯色噪声信道下,使用NDDT算法在最低可检测信噪比Es/N0=-5 dB时,Pd=100%,可以检测全部的22个信号。而对于样本数据,由于噪底不平坦,能量检测(ED)算法即使在信噪比Es/N0>5 dB时也只能检测到20个信号,Pd=91%。所以,在相同信噪比情况下,NDDT算法优于ED算法,如图5所示。根据大量样本验证,在同一信噪比下,它的ROC曲线(Receiver Operating Characteristic curve,受试者工作特征曲线)高于ED算法,如图6所示。
图5 ED法与NDDT法检测概率对比
图6 ED法与NDDT法ROC曲线对比
实际工程使用中,对比文献[4]所用地MPSG算法。对于20 MHz宽带信号,根据Nyquist低通采样定理,其采样率至少为40 MHz。而本文NDDT算法将20 MHz分为4 MHz窄带信号后,采样速率只要8 MHz即可,降低了对硬件采样速率和数据传输速率的要求。同时,算法复杂度在同一数量级情况下。由于它的数字处理单元所处理采样点较少,处理时间要优于MPSG算法。但是,对于快速设置的下变频器可能要更高的要求。这里,在采集、传输和数据处理能力都较高的情况下,可以采用宽带采集,然后使用数字下变频器和数字滤波器对数据进行预处理。
3 软件无线电平台设计
3.1 硬件/软件概述
本文所用算法的性能已经通过通用软件无线电外设(USRP)板实现的实验得到验证。作为可以实现低成本和高质量的软件定义无线电(SDR)的USRP硬件设备,它能给用户在非常复杂的无线系统的射频段提供各种高效、实时的功能[5]。URSP平台的主要作用是在计算机传送的数字基带信号和射频(RF)频段的模拟信号互相转换。这个双工模式过程分两步实现。第一步,计算机产生的数字信号在母板中被转换为数字中频(IF)信号,之后信号在专用子板中处理。该子板负责将数字IF信号转换为RF频段,最后信号通过安装的RF天线辐射。第二步,RF天线接收射频信号,通过子板转化为IF中频信号,然后利用母板上的FPGA处理成数字复基带信号传输给计算机,最后整个数据处理在计算机端利用GNURadio软件实现。软件平台可以用于商业开发和开源方案设计[6]。
在本文的信号实验中,使用2个USRP板卡:待检信号通过第一块板卡生成,而第二块板卡则用于信号接收和检测。整个软件处理过程已经在开源的GNURadio环境中实现。用C++语言开发的信号检测算法模块,可以高效、准确地检测接收的宽带信号,同时可以控制USRP硬件,原理如图7所示。
图7 软件无线电系统
3.2 发射端设计
模块功能测试是在发射机侧生成QPSK窄带信号。整个基带处理已经在GNU Radio环境中的PC计算机上实现,特别是在称为GNU Radio Companion(GRC)的图形工具中。其中,整个系统由软件平台的模块构建,如图8所示。
随机信号源(Random Source)产生重复的随机数据,其中载波调制方式为QPSK,宽度为1 MHz。Multiply Const模块为信号增益控制,FFT Sink模块为发射端频谱分析仪,用来显示调制好的频谱,USRP Sink模块为信号发射USRP控制单元,采样速率设置为4 MHz,中心频率设置为720 MHz。
图8 发射端系统模块
3.3 接收端设计
接收端采用两种检测算法:一种基于ED算法,另一种基于NDDT算法。发射机方面,接收端USRP负责接收无线传输信号。整个基带信号处理在使用GNURadio平台的计算机端实现。
USRP Source模块负责从RF频谱向计算机传输数据。它工作在720 MHz的中心频率并覆盖1 MHz的频带(对应于4 Mbps的复数采样频率)。为了评估噪声对选定检测算法的性能影响,已经使用附加的噪声生成(Noise Source)模块,并将适当功率的噪声信号与USRP源模块生成的信号相加,之后信号被分成平行链。在这样的配置中,两种算法都对相同的接收样本进行操作。使用FFT Sink模块用来显示接收信号,监测频谱情况。
其中,使用ED模块和NDDT模块都是用C++语言开发[7]。分别在两条链路中检测信号,统计后的数据Number Sink模块用来记录,并存储在File Sink模块所指定的文件中,如图9所示。
图9 接收端系统模块
3.4 实际信号测试
为了仿真色噪声噪底不平坦的宽带信号,本文采集带宽为20 MHz的通信信号,频谱如图10所示。接收端直接读取数据,两条链路检测结果如表1所示。
图10 数据频谱
表1 两种模式在不同信噪比下检测信号个数
3.5 实验结果分析
为了比较提出的NDDT算法的性能,下面将分析实验获得的结果。图11和图12是在虚警概率为0.85时取得的实验数据。
图11 窄带信号两个算法Pd对比
图12 色噪声宽带信号两个算法Pd对比
可以观察到,对于高SNR的窄带单信号,两种算法都表现出类似效果,实现了高检测效率。在SNR≥0 dB时,Pd=100%。宽带信号在色噪声底噪不平坦的情况下,NDDT算法检测的信号个数明显优于ED法,且在高信噪比条件下接近于真实信号个数。SNR≥0 dB时,Pd≥95%。但是,ED算法不能检测到噪底较低处的低信噪比信号。低SNR情况下,NDDT算法效果更好。
4 结 语
本项工作解决了在信道色噪声造成噪底不平坦条件下的宽带信号检测问题,提出把宽带信号分段成多个窄带进行数据采集,使用NDDT算法对窄带数据进行检测信号,进而检测整个带宽信号。该方法比经典的ED算法更能适应色噪声信道信号检测,在复杂度很低的情况下,大大改善了检测效果。为了在工程项目中使用该算法,设计基于GNURadio和USRP软件无线电平台的宽带信号检测系统,并对该系统包含的ED算法和NDDT算法对比测试。结果显示,该算法即使在较低信噪比条件下,也能对宽带信号实现高检测效率。由于它的运算复杂度低,试验表明可以对宽带信号进行实时检测。