基于M-Rife 算法的一种载频估计方法*

2023-01-16 15:05毛芃晖
通信技术 2022年11期
关键词:谱线信噪比校正

毛芃晖,胡 东

(杭州电子科技大学,浙江 杭州 310018)

0 引言

在无线电监测过程中,由于电磁环境较为复杂,难以识别与测量信号的基本参数信息,其中对信号的频谱分析尤为困难。在对信号的离散谱进行处理时,经常出现频谱泄露和栅栏效应的现象,信号的频率估计容易产生较大的误差。

为解决离散谱估计误差较大的问题,国内外许多学者已经研究出了不少频率估计的方法。文献[1]提出了基于Fitz 算法来进行频率估计,在低信噪比下也有很好的性能,但适用频率范围有限。文献[2]基于Kay 算法的特点通过最大似然估计得到修正权值矩阵,可在采样点不多的情况下完成频率估计,但频偏估计范围较窄。文献[3]提出了一种多步插值的频偏估计算法,该算法有效降低了计算的复杂度,但需要一定的信噪比门限。文献[4]提出了一种相位差分法,将载波估计转为相位差估计问题,计算精度不高。文献[5]采用了能量重心法对离散频谱进行频率校正,该方法较为简单易行,但不适用于频率密集的场合,有一定的局限性且精度不够高。文献[6]使用的Rife 算法是利用最大谱线及次大谱线来计算信号频率估计,该算法的精度较高,但由于快速傅里叶变换(Fast Fourier Transform,FFT)只能对有限个样点值进行处理,时域上的截断很有可能会带来较大的误差。文献[7]提出了一种M-Rife 算法,通过使用插值和频谱偏移可以大幅度提高频率估计的精度,且算法复杂度较低,频谱估计范围广,但计算量太大,在实际工程中并不适用。文献[8]、文献[9]、文献[10]都是在FFT 变换的基础上对Rife 算法进行了改进,但算法复杂度较高,实现难度较大。

本文提出了一种基于M-Rife 算法的频率估计方法,先计算出频率在能量重心法中粗估计结果的误差,再结合M-Rife 算法做信号的精确估计。理论分析和仿真结果证明,该方法计算较为简单,且适用于不同的调制信号,计算精度与传统Rife 算法相比也有所提高。

1 信号模型

假设接收到的信号经过基带调制后为:

式中:M为载波相位的取值数;Ts为信号周期;i=1,2,…,M;Es为每个符号的能量;fc为载波频率。抽样后的信号进行正交分解可表示为:

式中:I(n)为信号的同相分量;Q(n)为信号的正交分量。信号经过高斯白噪声信道后得到的信号模型为S(t)=x(t)+z(t),其中,z(t)为信号噪声大小。

2 能量重心法

能量重心法是一种基于离散谱的校正算法,其校正原理是利用对称窗函数功率谱的能量重心无穷逼近坐标原点的特性,并通过使用窗谱函数主瓣内功率谱较大的谱线精准估计出信号主瓣重心的位置,从而实现对频谱的校正[11]。窗函数的功率谱函数可以表示为:

功率谱最大谱线值为:

式中:l为频偏;ω(x)为窗函数的频谱模函数;ω(-l)为窗谱能量。根据文献[5]可知能量校正法在白噪声背景下的归一化频率校正的公式为:

式中:n为校正点数;m为主瓣内峰值最大点的谱线号;Gi为功率谱内第i条谱线值。能量重心法的校正精度在一定程度上由所选用的窗谱函数能量特性来决定,而在矩形窗、Hamming 窗、Blackman 窗等常见窗函数中,当n足够大时,离散窗谱的能量重心都十分接近原点,其中由于Hanning 窗功率谱的能量主要集中在主瓣内,所以能量重心法的校正精度最高。以Hanning 窗为例,Hanning 窗的时域表达式为:

式中:N为窗长点数。N的功率谱模函数的计算式为:

式中:x0为需要分析的信号的归一化频率。通常选取3 条谱线来进行离散频谱的能量重心校正,即利用功率谱内峰值最大的谱线和与之相邻的两条谱线,求出其频率估计量为:

能量重心法简单易行,可运用于不同窗函数公式,但在实际应用中可能会存在各种噪声的干扰使得谱线的定位出现偏差,估计性能降低。

3 Rife 算法

Rife 算法主要是利用最大谱线和次大谱线值来推导出公式[12]:

式中:|X(k0)|为最大谱线值。当|X(k0+1)|≤|X(k0-1)|时,r=-1;当|X(k0+1)|≥|X(k0-1)|时,r=1。在理想的无信噪比条件下,使用Rife 算法进行频率估计得到的误差较小;但在实际有噪环境下,Rife 算法存在一定信噪比门限,且计算机模拟结果表明,当f0越靠近fs(k0+r)/N时,信号的频率估计误差越大。而当信噪比较低时,最大谱线与次大谱线距离较为接近,对谱线幅度也有一定影响,信号的估计误差也会变大。为使频率估计更为准确,在Rife 算法的基础上建立了M-Rife 算法。M-Rife 算法首先执行Rife 算法1 次,并把所得到的最大谱线和次大谱线之间的频谱区域划分为相等的3 段。找出最大谱线后,使用离散傅里叶变换的谱估计方法可得到一个粗估计的频率值。当Rife 算法计算的频率值为粗估计频率值的1/3 时,得到的频率估计值的精确度较高,可直接返回估计值;当估计到的频率值接近粗估计频率值的1/3 时,则将目标信号频移fs/N/3,之后再次使用Rife 算法进行估计,获得新的频率估计值后,再将先前的频移除去,便可以得到精确度更高的估计值。M-Rife 算法的频谱量化位移公式[13]为:

其频移后的时域表达式为:

对x´(n)重新执行一次Rife 算法,并将由上述公式得到的频移除去,最终得到的信号估计频率为:

4 基于M-Rife 算法的精估计算法

由于Rife 算法和M-Rife 算法都存在不足,本文将能量重心法与M-Rife 算法相结合,提出一种新的载频估计方法。由于M-Rife 算法需在信号FFT 变换后得到,FFT 变换很难保证截断的信号为周期信号,因此会引起能量泄露,导致得到的离散频谱的频率产生较大的误差[14]。能量重心法和M-Rife 算法都是基于最大谱线值和次大谱线值来估计频率的,而能量重心法计算精度大,能对多段平均功率谱直接进行频率校正,所以本文采用能量重心法来计算M-Rife 算法所需的频率补偿。首先,选取一段均匀分布的频段,在此频段中选取N个频率点,利用Hanning 窗旁瓣较小且衰减较快的性质对信号进行加Hanning 窗截断,并选取合适的采样频率后对信号等间隔采样得到序列:

对s(n)加窗函数ωN(n),将得到的信号序列进行离散傅里叶变换求出信号频谱为:

式中:Gω(k),Xω(k),Zω(k)分别为sω(k),x(n)ωN(n),z(n)ωN(n)的离散傅里叶变换频谱。根据式(5)进行频率估计,对每个频率点做多次蒙特卡罗仿真,计算出每次仿真得到的估计频率值的均方根误差,均方根误差最小的频率值即为每个频率点的最佳校正频率δi,最后求出N个最佳校正频率的平均值即为该频段内的最佳校正值,则有:

在求得m的基础上校正的M-Rife 公式可变为:

式中:|X(k1)|为M-Rife 算法中信号频移后得到的功率谱最大谱线的幅值;|X(k1+r)|为次大谱线的幅值。

5 仿真实验与结果

在加性高斯白噪声信道的条件下,对本文算法用MATLAB 进行蒙特卡罗仿真和分析,并通过比较不同信号在Rife 算法和改进后的算法下得到的频率估计值的归一化误差均值和方差来评估算法性能。信号的归一化平均误差曲线(Normalized Mean Error,NME)的理论值[15]为:

归一化均方误差曲线(Normalized Mean Square Error,NMSE)公式为:

按照式(16)中定义的信号修正计算方法,相关参数设置如下:在频段内选取10 个频率点,采样点数为1 024;仿真时选用2FSK、4PSK、16QAM这3 种常见的数字信号进行实验,信号载波频率为1 000 Hz,采样频率为1 000 Hz,采样点数为 4 096,信噪比范围在0~20 dB。具体的仿真结果分析如下文所述。

两种载频估计方法在每个信噪比下分别进行100 次蒙特卡罗仿真得到的误差均值如图1 所示。

图1 不同信噪比下两种算法的误差均值曲线

通过图1 可以看出,本文提出的频率估计算法的估计误差均值远远小于Rife 算法估计的误差均值,说明通过能量重心法的计算,可以求出M-Rife算法载频估计所需的校正值。特别是在信噪比较小时,M-Rife 算法的误差较大,而改进后的算法在低信噪比时仍能保持较好的性能。

两种载频估计方法在每个信噪比下分别进行100 次蒙特卡罗实验得到的误差方差如图2 所示。

图2 不同信噪比下两种算法的误差方差曲线

通过图2 可以看出,在不同信噪比的条件下,本文提出的新方法的频率估计误差方差都比较低,证明改进后的算法在不同的噪声条件下仍旧可以保持很好的性能,在信噪比变化较大的情况下稳定性也比传统的Rife 算法更好。

6 结语

本文通过能量重心法来估计信号频率并以此来计算出信号产生的频率偏差,然后用求得的频率偏差值来补偿M-Rife 法的估计频率,得到最终精准估计值。该方法易于实现,在不同信噪比下对比Rife 算法在估计性能方面有很大的优势,也能适用于不同类型的调制信号,非常适合在无线电频谱监测中使用。

猜你喜欢
谱线信噪比校正
“羲和号”首次获得三种太阳谱线轮廓
依据不同波段光谱诊断闪电回击通道温度*
两种64排GE CT冠脉成像信噪比与剂量对比分析研究
基于彩色CCD的棱镜摄谱实验数据处理
劉光第《南旋記》校正
基于深度学习的无人机数据链信噪比估计算法
建立在校正系统上的强大实力Sonance所能士i12
低信噪比下基于Hough变换的前视阵列SAR稀疏三维成像
在Lightroom中校正镜头与透视畸变