罗争+杨学刚+李勇+吴林
摘要:针对现有电磁频谱监测设备操作复杂、灵活性差及数据格式封闭等问题,本文将软件无线电技术应用于电磁频谱监测领域,研究开发了一套频谱监测和数据分析软件,可根据需要调整中心频率、带宽、采样率等参数,并可对硬件上传的信号进行实时分析,具有较大实际应用前景。
关键词:软件无线电;电磁频谱监测;数据分析
中图分类号:TN98 文献标识码:A 文章编号:1007-9416(2017)01-0041-01
在未来战场上,电磁空间对抗异常激烈,战场电磁态势日益复杂,传统的电磁频谱监测技术和方法早已无法满足剧增的用频需求和多变的,加之监测设备采集的监测数据格式封闭,无法对其进行有效的二次开发和数据挖掘分析,一定程度上影响了监测数据对我军作战用频的支撑作用。软件无线电最早被美军用于解决海湾战争中多国部队各军种进行联合作战时的“互通、互联、互操作”问题而提出来的新概念,具有很强的灵活性和开放性。
本文开发了一套宽带频谱监测和数据分析軟件,该软件能够对上述硬件设备进行控制,根据需要调整中心频率、带宽、采样率等参数,并对硬件设备上传的信号进行实时分析,提取关键频谱特征参数。同时,该软件兼容于现有超短波和短波监测系统的自动监测数据,并能够对其进行有效分析,便于进行发射源干扰定位、频谱占用度分析等频谱特征分析处理,与动态频谱管理相结合,能提供更有效、更精细化的战场电磁频谱管控。
1 软件设计与开发
软件基于QT 4进行开发,绘图部分采用QWT库函数实现,信号处理部分采用Intel IPP库函数实现。上位机软件的模块框图如图1所示,包括频谱显示、参数设置、频谱计算和MAC数据包读取等模块,机软件部分模块功能介绍如下。
2 频谱显示部分
用QT + QWT 实现,代码主要分为接收数据部分、数据处理部分和页面显示部分,可以按一定的刷新频率实时显示从网卡读取的数据的频谱。界面刷新由定时器实现。面板上显示了一些基本信息,可以设置中心频率、采样率等参数。
3 监测数据读取部分
主要由winPcap的pcap_open函数和pcap_next_ex函数完成,pcap_open打开可用网卡,设定超时时间,以免程序阻塞;pcap_next_ex用于抓MAC包,FPGA连续发送数据,处理部分的FFT点数有256,512,1024,2048,4096可选,默认每次读取4096个点的数据,和发送方约定MAC包的包头有17个字节,包括原地址、目的地址、类型、发送接收标识、计数等信息,主体有1400个字节,I低I高Q低Q高共4个字节表示一个数据点,则每个包含有350个数据点,每次共读取12个包。
4 监测数据处理部分
主要由IPP库的ippsFFTFwd_CToC_64fc函数实现,接收数据Buffer中数据点数和程序设定的最大FFT点数一致,为了频率分辨率可调,根据df=Fs/N,采取改变FFT点数的方法,面板上的调节旋钮目前有5个档位,处理数据时根据面板选择的FFT点数:256,512,1024,2048,4096做相应点数的复数到复数的FFT,然后再进行转换,计算得到接收信号从-Fs/2到Fs/2,以dB为单位的频谱,存放到相应的Buffer里,供画图部分调用。主要过程如图2所示。
5 人机交互界面部分
交互界面主要包括实时显示频谱和FFT点数\频率分辨率等信息以及接收面板上的设置。绘制频谱由QwtPlot类和QwtPlotCurve类完成,QwtPlot是.ui文件中的一个Widget,本身不具有添加图元的属性,相当于是一个容器,可以容纳许多的图元。QwtPlotItem类是所有图元的基类,可以派生出多个控件对象,如网格(QwtPlotGrid类)、曲线(QwtPlotCurve类)等,这些图元自己决定是否添加到QwtPlot中,频谱绘制时,首先定义QwtPlotCurve类的对象,通过setSamples设置数据,由attach函数添加到容器中进行显示,另外还设置了绿色的曲线,黑色的画布背景,白色的网格线等。面板右侧还可以输入中心频率和带宽设置频谱的显示范围,按下确定按钮生效,复位按钮用于回到放大之前的默认的比例尺。
6 结语
未来电磁频谱监测将朝着分布式监测、集中式数据处理的方向发展。本文研究了基于软件无线电技术的电磁频谱监测新方法、初步开发试验了软件平台,该软件无线电平台可部署于通用计算机上,代码和数据格式开放,便于进行代码的二次开发和监测数据的挖掘分析,可视化界面也保证了频谱监测数据能够以直观的形式展现在用频用户前,提高了数据的利用效率。该平台可作为频谱监测的“智能盒子”,为灵活机动部署监测设备、自动实施多频段全时段监测提供了可能性。