李国军,乔金亮,周晓娜,叶昌荣
(1.重庆邮电大学超视距可信信息传输研究所,重庆400065;2.重庆理工大学计算机科学与工程学院,重庆400054)
高 频CW 通 信 是 在3~30 MHz 频 段 内(波 长10~100 m)的一种无线电通信方式,所需设备简单、占用频带窄、功放效率高,能在低信噪比的环境下工作,是目前战术通信的重要手段。同时,在航海、航空等灵活性通信以及抗干扰要求较高的民用方面也有广泛的应用[1-3]。高频CW自动接收分为信号自动检测技术与点划识别技术2个步骤。CW信号自动检测的目的是从噪声背景下检测提取出纯净的CW信号时域波形,抑制背景噪声和信道噪声对CW信号的影响;而点划识别则是从检测提取出的纯净CW信号时间序列中识别出莫尔斯码的点划序列,再根据莫尔斯码的译码规则译为相应的字符(英文字母、数字或标点符号)。
长期以来,CW电报通信都是靠人工操作完成的,但是短波高频电离层信道存在严重的衰落现象和多径效应。考虑战时通信电磁环境十分恶劣,在强噪声干扰和码速率较高的情况下,人耳很难辨别发报信息的内容,随着现代通信技术的快速发展,人工CW通信速度显得较为缓慢,而且误码率较高,从而造成通信性能下降。
国内外对CW电报信号自动检测译码的研究有很多,但是目前还没有得出能够在强噪声背景下同步检测提取出纯净高频CW 信号的一致算法。文献[4]中使用包络检波算法,但当码速率较高或处于强噪声干扰时难以实时跟踪信号波形的变化,出现误码率高,性能严重下降的情况。文献[5]采用复数谱方差识别高频CW 信号,算法虽然简单,但抗单音信号及邻频CW 信号干扰性能差,而且没有考虑噪声特性的时变问题,难以在实际工程中应用。文献[6]提出了一种基于ARMA信息模型的CW信号自适应Kalman滤波方法,但是在滤波开始阶段存在较大的抖动,且判决电平使用脉冲峰值的均值,自适应能力和实时性差。文献[7]提出一种基于非线性双稳随机共振的微弱CW信号检测方法,算法复杂,自适应性和实时性差,且检测结果依赖于算法的精度。文献[8-9]采用人工智能和机器学习的方式对莫尔斯码进行检测识别,但该算法复杂,需要大数据样本对其进行训练。
以上文献中的检测算法是在没有信号同步的基础上直接对CW 信号进行处理,识别算法中基本都是使用硬判决的方法。短波电离层反射信道随机多径现象严重,不仅引起信号幅度的衰落,而且引起干涉效应,使信号产生失真和多径时延。因此,CW电报接收端的同步性能对通信系统至关重要。以上算法不能应对未知噪声强度时变的问题,造成CW 信号检测识别[10]的误码率较高,通信性能不佳。所以,CW电报的自动检测和识别仍是当前战术通信发展的重点。
本文提出一种基于卡尔曼最优估计特性,对CW电报信号进行自动识别的算法。利用自同步法对CW电报信号进行时域同步定位分段,通过Goertzel 算法得到信号在CW 特征频率点的能量,进而通过卡尔曼滤波设置自适应能量阈值,对CW 信号的能量值进行判决识别,实现强噪声背景下CW 信号的同步检测和自适应识别,同时保证算法的递推性和实时性。
将无线短波电台接收机调谐到CW信号载波频率上进行电报接收,由于实际高频电离层信道存在多径效应引起的多径衰落,以及信道中各种噪声的影响,所以将高频CW 信号模拟为一个频率已知、幅度和相位未知的正弦信号。
CW信号频率f0通常设置在300~3 400 Hz 频率范围内,CW通信的报文信息主要就是莫尔斯电码,莫尔斯电码(又译摩斯密码,Morse code)是一种时通时断的信号代码,由2 种基本信号(点‘dot’和划‘dash’)和不同的间隔时间组成,通过不同的排列顺序来表达不同的英文字母、数字和标点符号。它以其精简度高、成本低、效率高的优势,在通讯科技日益发达的今天,仍然占有相当重要的地位。点‘dot’脉冲持续时间Ts与通信码速率(CPM)有关,有2 个常见的典型标准:“PARIS”制和“CODEX”制。PARIS 模仿自然语言单词的典型单词率,并利于表示莫尔斯电码代码对于常见字符(如“e”和“t”)的较短代码持续时间。CODEX提供典型的5 字符代码组(随机字母序列)的单词速率。使用PARIS 制作为标准,点单位数为50,计算表明每分钟20 个单词的点长度为60 ms。使用60 点单位的CODEX 制,每分钟20 个单词的点长度为50 ms。本文以“CODEX”为标准进行通信,由此得到的Ts(s)=5/CPM,在100 CPM 速度下,Ts时间长度为50 ms。图1中取CW信号特征频率f0为1 000 Hz,采样频率fs为8 000 Hz,按照莫尔斯码规则构造信息为“CQ SOS”的CW电报信号。
图1“CQ SOS”的CW电报信号形式Fig.1 CW signal form of“CQ SOS”
CW电报信号识别就是从噪声、干扰与畸变、时延中提取纯净信号,获取发送信息的过程。本算法首先利用自同步法对CW电报信号进行同步检测[11-12],实现位同步,利用Goertzel算法得到分段信号的能值,通过建立卡尔曼滤波状态空间模型动态最优估计能量阈值进行软判决,最终实现CW电报的自动识别,如图2所示。
图2 CW电报自动识别流程图Fig.2 Flow chart of automatic recognition of CW
任何一个通信系统都是发送信号与接收信号的结合,接收信号的前提就是要实现系统的同步以得到码元信号的起止时刻,获取完整的码元信息。同步性能的好坏直接影响通信系统的性能,出现同步误差或失去同步会导致通信系统性能下降或通信中断。短波宽带接收机对高频CW电报信号进行下变频得到基带信号,基带信号内包含CW电报信号的同步信息,利用自同步法对信号实现位同步:对基带CW 信号进行二次下变频,根据点‘dot’脉冲持续时间Ts,得到同步正弦信号理论频率,但是实际高频电离层信道传播中存在多普扩展和多普勒频移的影响,设置适当的频率范围在基带信号频谱内进行尖峰探测,提取出同步正弦信号对CW 电报信号进行时域定位分段,如图3 所示。
图3 CW电报信号同步流程图Fig.3 Flow chart of CW signal synchronization
Goertzel 算法[13-14]是在离散傅氏变换的基础上进行改进的一种算法,序列x(n),n ∈[0,N-1]的离散傅里叶变换(DFT)为:
式中,WN=e-j2π/N。
所以,式(1)可写为:
式(2)求和具有卷积的形式,因而可将X(k)视为序列x(n)激励某一系统的输出。
将此一阶递归系统算法改进为一个二阶系统递归算法,其转移函数为:
式(3)二阶系统可用以下差分方程表示:
Goertzel 算法[15-16]能得出与常规离散傅里叶变换(DFT)或FFT 相同的频率实部和虚部,但是Goertzel算法能取得信号在特定频点的频谱幅值大小,不须要计算整个频带的频谱值。同时,能够在每次采样后立即进行处理。相比FFT 对成块的采样进行处理的方式,采用Goertzel 算法更加有效,运算量小、实时性更强,本文利用Goertzel算法,计算分段信号在CW信号特征频率点的能量值。
通过Goertzel 算法得到的信号能量值有2 种:有效信号能量值与噪声的能量值之和;CW 电报信号各种间隔(包括点‘dot’和划‘dash’间隔、字符之间间隔、单词之间间隔)内信道噪声以及背景干扰噪声的能量值。因此,须要设置一种阈值判决其是否为有效信号能量。由于高频通信中电离层信道是随参信道,固定的判断阈值不能应对干扰噪声强度时变问题,使得识别结果误码率增大。Kalman滤波[17-18]能够从一系列完全包含噪声的测量中,估计一个动态系统的最优状态,尤其在强噪声背景下跟踪动态信号,在动态系统最优估计中具有很好的性能,且能对目标状态能进行递推迭代实现最优估计。但CW 信号的标准Kalman滤波要求已知系统噪声的统计特性,错误的系统模型、测量模型或不准确的噪声统计值会导致估计值产生发散现象。所以,本算法在规定报文信息以‘CQ’为报头的基础上进行同步检测识别,以得到通信信道噪声信号的统计特性。通过卡尔曼滤波技术设置自适应阈值对能量值X(k)进行判决识别,自适应阈值会动态的调整以应对干扰噪声能量的时变。
卡尔曼滤波[19-20]采用信号与噪声的状态空间模型,利用前一时刻的估计值和现时刻的观测值来更新状态变量现时刻的估计值。
式(4)分别为Kalman 滤波状态方程和测量方程,状态值X(k)是通过Goterzel算法得到的CW信号每N个样本在特征频率点的能量值,定义观测值:
通过设置长度为8 的滑动窗得到观测值,是因为CW信号点划最大间隔为7倍dot长度,保证在此滑动窗内有一个有效信号能量值。
设置状态转移矩阵Φ、观测矩阵H 和噪声驱动矩阵Γ 都为单位矩阵,状态噪声和观测噪声均为零均值高斯白噪声过程,前后时刻的误差互不相关,对应的统计特性方差Q、R 根据先验报头信息‘CQ’对应的CW 信号得到,利用更新传递方程式对能量阈值实时更新。
图4 CW电报信号识别流程图Fig.4 Flow chart of recognition of CW signal
Matlab仿真中,CW信号特征频率f0为1 000 Hz,采样频率fs为8 000 Hz,通信码速率CPM为80,采样点数为90 541,时间长度为11.317 6 s。分别对纯净CW 信号添加信噪比为-20~0 dB 的高斯白噪声。同时,模拟瑞利衰落信道,对CW信号进行同步检测和识别。高斯白噪声和瑞利衰落仿真信道对信号具有随机性,所以在每个固定信噪比下进行100次检测识别,记录位同步相差和误码率以及同一信噪比下结果的方差。同时,利用短波信道pathsim 仿真软件分别在CCIR-good、CCIR-moderate、CCIR-poor 3 种仿真信道下模拟通信环境,利用本算法对不同信噪比下的CW信号进行检测识别,记录误码率。
相位误差是指同步信号的平均相位与最佳同步相位之间的偏差,是衡量位同步性能优劣的指标。如图5所示,随着噪声信号强度的不断增大,同步检测的相差和误码率随之逐渐增大。同时,同步性能的好坏也直接影响信号识别的误码率,位同步相差的增大导致识别误码率的提高。
为了验证此算法在实际短波通信中的性能,以重庆市重庆邮电大学与重庆市石柱县为测试点,直线距离150 km ,时间为2018.3.28 09:55,通信频率选择5.47 MHz ,码速率CPM 设为80。石柱县使用WTB150 中高频无线电单边带电台配置倒‘V’天线进行CW 电报信号的发送,在重庆邮电大学使用WRG33DDC短波宽带接收机配置倒‘V’天线将接收信号保存为‘wav’文件,利用本算法对CW 电报信号进行检测识别,结果如图6所示。
图5 同步相差和误码率Fig.5 Synchronization phase difference and bit error rate
图6 实际信号检测结果Fig.6 Actual signal detection results
结果显示,此算法能够在实际短波通信中检测识别出纯净的CW 电报信号,但是误码率比较高。究其原因,是由于本算法在仿真中使用的是高斯白噪声,实际通信中噪声是非平稳有色噪声。下一步,对算法进行完善,以应对实际通信信道环境。
针对目前高频CW电报信号检测方法的抗噪声性能不强、实时性差的问题,本文提出一种基于卡尔曼滤波的高频CW电报信号自动识别算法。对报头信号处理得到通信信道噪声的统计特性,通过卡尔曼滤波迭代递推最优自适应能量阈值,消除信道多径效应和干扰噪声对信号的影响,提取出纯净的CW 信号进行识别译码。实验证明,在强高斯白噪声干扰和实际短波通信环境下,该算法能够有效识别出纯净CW信号,且算法可递推实现,对高频CW 信号的自动检测识别具有一定的实用价值。