一种基于VxWorks水下目标侦听方法的设计与实现∗

2018-09-27 01:24代中华周胜增张国超
舰船电子工程 2018年9期
关键词:数字音频听音控件

代中华 周胜增 程 威 张国超

(上海船舶电子设备研究所 上海 201108)

1 引言

近年来,随着各国水下武器装备技术的突飞猛进,在未来海战中,来自水下目标的威胁日趋严重。能否对水下目标实现正确、快速的检测和分类,对于海军水面舰艇的作战能力和生存能力至关重要。目前对水下目标的检测分类主要依靠时域、频域或时频联合域的噪声特性分析[1]。其中基于LOFAR和DEMON的频域分析技术在国内外目标识别领域中得到了广泛应用[2~3]。但这些都忽略了听音员的听觉感知能力在声纳目标识别中的作用,在听觉机理下人类可以较容易地分辨声信号的主观描述特征。随着听觉科学的发展,听觉生理和听觉心理研究取得了大量的成果,在语音识别领域中得到了广泛的应用。将听觉科学的研究成果应用到对水下目标噪声信号中,分析听音员听觉分类频幅特征,对提高被动声纳目标识别系统的性能意义重大[4~5]。本文针对水下目标听音的需求,提出了一种基于VxWorks的水下目标侦听方法的设计与实现。

通常情况下,声纳处于值班模式,当出现疑似目标时,听音员对疑似目标所在区域进行侦听,可对目标类型进行提前预判,或者当威胁目标自动识别后,听音员需通过侦听对目标类型进一步确认。

2 运行平台及原理说明

水下目标侦听模块的组成及原理如图1所示。运行平台主要由信号处理单元、网络接收单元、核心处理单元、音频处理单元、操控单元、显示单元组成。信号处理单元:按照一定频率的噪声检测带宽,对接收的水下湿端信号在侦听方位上作时域波束形成,然后将侦听波束输出进行带通滤波,再将得到点数据累积后按照声纳周期输出给网络接收模块。网络接收单元:接收信号处理波束形成后的信号并通过CPCI总线转发给核心处理模块进行数据处理,配置满足PICMG2.16的千兆以太网接口。核心处理单元:为软件的运行平台,完成数据滤波处理、数据转发、综合显示等工作,采用In⁃tel945GME芯片,配置双核处理器、主频1.66GHz、DDR3容量4G。操控单元:负责完成侦听方位、侦听目标的选择。音频处理模块:将通过CPCI总线输入的单声道波形数字信号还原为单声道模拟音频。显示单元:负责声纳图像信息、状态信息、目标跟踪信息等综合状态显示,配置20.1英寸的液晶显示屏。耳机、扬声器:用于听音员侦听水下目标或方位的音频信息。

图1 记录重演模块的工作原理

总之,当听音员发现侦听疑似目标或者需要重点关注某一方位时,他可以通过操控单元进行侦听目标或者方位的选择,核心处理模块将输入的目标或者方位信息通过网络接收模块转发给信号处理模块,信号处理模块对该目标方位的水下数据进行波束形成后形成数字音频信息,并通过网络接收模块发送至核心处理模块,核心处理模块对数字音频信息进行滤波等数据处理,并通过CPCI总线将水下数字音频信息传输给音频输出模块进行数模转换、运算放大等处理,并将模拟音频信号输出至扬声器和耳机供听音员侦听。

3 音频处理模块设计

音频转换模块是侦听过程中最重要的模块,其主要功能是将通过CPCI总线输入的单声道波形数字信号还原为单声道的模拟音频信号输出。实现时输入采用一路16kHz采样率的16位精度数字音频信号,输出设计为符合AC97标准的单路模拟音频信号。音频输出模块主要由PCI接口芯片、FPGA、音频D∕A转换器、OP Amps运算放大器等4部分组成,其组成框图如图2所示。

来自核心处理模块的数字音频信号通过PCI接口芯片输入至音频处理模块内部。由于主机传输数据的速度较快,本模块输出的音频速率为16KB∕s,所以需要采用FIFO进行数据缓存[6]。一般情况下高速数据缓存通常采用专用FIFO,但是价格较高,所以我们利用FPGA来实现一个大容量的FIFO,即简化了系统,又提高了效率,其实现原理如图3所示。在FPGA模块中实现数据的缓存和处理,然后处理过的数字音频信号传入音频D∕A转换器,音频D∕A转换器将其转换为模拟音频信号,最后模拟音频信号经过OP Amps运算放大器放大后输出至耳机和扬声器。

图2 音频处理模块组成框图

图3 音频处理模块原理框图

图中PCI接口主要完成本模块与核心处理模块的通信,可接收PCI总线的控制信号和数字音频数据,再传送给本地局部总线,同时可实现对本地局部总线的状态查询和数据读取功能。FPGA主要完成数字音频信息的缓存和控制两项任务。FPGA内部有大量的存储器资源,可以生成FIFO,且FP⁃GA有大量的门电路,可以生成控制信号控制数据的接收和输出,同时向PCI接口发送状态信息。设计时,输入输出接口采用CPCI总线接口,切总线符合PICMG 2.0R2.1规范。

侦听时,来自音频处理模块的模拟音频信号输出至耳机通道,功率放大后,推动扬声器播放。插入耳机后自动切断扬声器播放,拔出耳机后自动恢复扬声器播放。耳机通道输出设计为输出阻抗32Ω、输出最大电平 4.5dBu、增益范围-90dB~30dB、步进0.5dB、带宽20Hz~20kHz、带内波动±1dB、信噪比不小于90 dB。扬声器输出阻抗为8Ω、输出最大不失真功率3W。

4 软件设计

水下目标侦听软件是在VxWorks操作系统、驱动程序和支撑软件的基础上开发的应用软件。操作系统采用美国WindRiver公司开发的一款优秀的商用操作系统VxWorks5.5.1,该系统目前广泛应用在航空、航天、军工、工业控制等领域,是业界最流行的嵌入式操作系统之一,并具有高性能的Wind内核、多任务实时调度、时间片轮转调度、优先级抢占调度、良好的可裁减性等特点[7]。驱动层包含:网卡驱动、显示驱动、USB接口模块等。支撑软件采用了窗口管理及可视化控件、综合图形图像显示中间件EGK。通常水下目标侦听软件是系统软件的一个部分,以模块的形式内嵌在系统软件中。

4.1 人机交互及数据处理

应用程序界面的开发采用了面向对象的开发方法以及综合图形图像显示EGK中间件。其中,EGK是当今较优秀的嵌入式跨平台CHGUI控件库之一,可支持VxWorks、Jari-Works、Linux等操作系统。EGK采用面向对象的C++平台无关框架,提供全特征的可裁剪和可定制的控件集,用于实现基于事件驱动的跨平台的用户图形界面开发。用户可以在既有控件集的基础上进行控件的二次开发,即用户自定义控件,以符合特殊应用场合的需求。应用层软件软件开发采用图形开发工具EGK接口API,包含了人机界面中基本的窗口和控件,开发时主要用到了以下四个接口类:Egk_Widget(控件基类)、Egk_Group(控件组类)、Egk_Window(窗口类)和 Egk(全局类)[8~10]。

水下目标听音作为系统的一项功能,通常以模块的形式内嵌在系统显示控制设备中。在作战或者演习过程中,当听音员认为有必要对某疑似目标或者疑似方位进行侦听时,他可以通过鼠标或者按键等操控设备进行选择。侦听时可以选择用扬声器或者耳机进行听音,也可以插入录音笔进行录音,供事后进行分析或听音训练。人机交互界面如下图4所示。

图4 人机交互界面

数据处理方面,信号处理模块将波束形成后水下数字音频信号通过网络传至核心处理模块,核心处理模块将数字音频信号进行滤波等预处理后通过PCI总线转发至音频转换模块,水下数字信号经数模转换、运算放大后输出至扬声器和耳机进行输出。考虑到人耳听觉系统独特的优越性,为增强侦听效果,本文借鉴语音与音乐识别领域的研究成果,利用Gammatone滤波方法对波束形成后的数字音频信号进行滤波[11],处理后有效降低海洋背景噪声,有利于提高听音员的目标识别能力。侦听数据流程图如图5所示。

图5 侦听数据流程图

4.2 软件部分代码实现

在软件开发过程中,利用Tornado2.2开发环境特有的主机—目标机的开发方式完成软件的编译和调试[12]。主机选用装有Windows XP系统的PC机,配置双核处理器、2.93GHz主频、2G内存。目标机为配置Intel X86处理器的显控台,装有VxWorks 5.5.1操作系统。开发调试时将编译好的。OUT可执行文件并通过网络加载到目标机RAM中运行,开发过程简单方便、易于调试。当程序调试好后,利用开发套件工具将程序固化在电子硬盘内,系统上电后将根据配置文件中的入口函数及可执行文件名自动启动固化的应用程序。

部分代码示例如下:

int Scb302Init()∕*语音模块初始化*∕

{

……

if(pciFindDevice(PCI9054_VENDOR_ID,PCI9054_DE⁃VICE,0,&bus,&dev,&func)==OK)∕*查找pci9054桥设备*∕

{

pciInLong (bus,dev,func,PCI_CFG_ADDRESS_2,&baseAddr);

baseAddr=Addr&0xfff00000;

fifoIE=Addr|SCB302_FIFO_INT;∕*SCB302 本地总线FIFO中断使能寄存器*∕

……

}

}

taskSpawn("tSCB302Play",200,VX_FP_TASK,0x8000,(FUNCPTR)PlayAcoDat,0,0,0,0,0,0,0,0,0,0);∕*启动侦听主任务*∕

void PlayAcoDat()∕*侦听数据处理*∕

{

∕*数据滤波处理*∕

while(……)

write(fdScb302,(char*)&pData[index],slen);∕*CPCI数 据传输*∕

}

5 结语

本文对在VxWorks操作系统下水下目标侦听方法的设计与实现进行了详细描述,并对该方法进行了工程实现,实现结果表明本方法具有通用化设计、移植方便、操作简单、反应时间短等优点。本文所介绍的技术已经在项目中进行了应用,有利于听音员对疑似目标进行提前预判或者有助于威胁目标自动识别后,听音员通过侦听对目标类型进一步确认。目前该方法还是需要人工参与识别过程,接下来作者的工作重点将是针对滤波后的数据进行目标特征提出,与水下目标特征库进行比对自动识别目标类型。

猜你喜欢
数字音频听音控件
小议数字音频技术在广播电视中的运用
基于C++Builder 的电子邮件接收程序设计*
平远雨夜
基于体域网技术的数字音频实时传输系统设计
使用“填表单”微信小程序 统计信息很方便
基于.net的用户定义验证控件的应用分析
数字音频技术在广播电视工程领域中的应用
有人
有人
Spreadsheet控件在Delphi数据库系统中的编程与应用