董鸿鹏,金 雷,王春财
(中国人民解放军92728部队, 上海 200040)
飞行模拟器能够模拟航空器执行飞行任务时的飞行状态、飞行环境和飞行条件,能给飞行员提供近似真实的操纵负荷、视觉、听觉以及运动感觉,是提高飞行人员飞行训练水平的重要装备。而通过对各飞行模拟器间的联网建设,能够实现不同种类的飞行模拟器(如战斗机、运输机、直升机等),多台模拟器分别扮演红蓝方进行联网模拟实时空战训练的功能,能够有效提高多机协同作战的训练水平,是提高我军战斗力的重要保障[1]。在飞行模拟器联网建设中,语音通信系统建设是其中非常重要的一个方面,它是保证多台飞行模拟器共同训练过程中指挥命令能够顺利传达的基础,是联网训练任务能够正常进行的前提保障[2]。本文结合具体的工程项目要求,根据联网模拟器的系统链路结构,设计了一种联网飞行模拟器语音通信系统的实现方法,开发了一种语音切换软件。
飞行模拟器联网网络系统的主要功能是提供模拟器之间的互联互通及网络通信管理功能,包括数据传输、语音通信和网络管理等。其中的网络语音通信系统是模拟在飞行模拟器联网训练过程中总导调室、红/蓝方模拟指挥所与联网模拟器相互之间的语音通话功能,是联网模拟器建设的一个重要方面[3]。
联网模拟器的语音通信系统,主要包括总导调室、红蓝方指挥所、红蓝方模拟器教练员、红蓝方模拟器飞行员四个方面,其各自职能为:
1) 总导调室:负责整个飞行模拟器联网训练想定的生成、训练过程的监控、训练胜负的评判和演习结果的讲评,协调训练过程各方人员间的指挥通信等;
2) 红蓝方指挥所:模拟地面指挥所进行指挥引导的功能,包括模拟指挥所领航台系统和雷达台,接收态势数据,实现目标的雷达态势和综合态势画面显示,并进行语音的指挥引导等;
3) 红蓝方模拟器教练员:根据训练想定设置模拟器相关参数,监控模拟器飞行员的飞行动作,训练后对飞行员进行指导讲评;
4) 红蓝方模拟器飞行员:根据接受的命令操作模拟器进行飞行训练。
为实现飞行模拟器联网训练的功能,必须具备语音通信系统,能够模拟出总导调室、红蓝方模拟指挥所与联网飞行模拟器相互之间的语音通话功能。语音通信系统结构如图1所示,系统各个部分通过模拟器联网网络系统的主干网进行连接和通信。
图1 语音通信系统结构示意图
语音通信系统中每个联网节点(总导调室,红蓝方模拟指挥所和飞机模拟器)将语音输入到相应的语音计算机,然后语音计算机根据分组情况通过网络发送给可通话的其他节点的语音计算机。语音计算机一般由各个分系统的网络服务器来担当,在总导调室的语音计算机为总语音计算机,其他节点语音计算机启动后发送网络命令给总语音计算机,总语音计算机根据作战想定设置红、蓝方等。红、蓝方通过总语音计算机中转实现各自音频通讯互不干扰,同时又可跟总导调室进行语音通信。整个联网语音通信系统的声音收发逻辑关系如表1所示。
表1 声音收发关系
语音通信系统包括软件和硬件两部分,硬件主要包括数字音频处理服务器、计算机、网络交换机、指挥话筒、扬声器、耳机等,软件是指数字音频处理切换软件。
负责总导调语音系统的计算机需安装音频切换软件,计算机声卡的输入连接话筒,使用两个通道的声音输出分别作为红蓝方声音信号输出。总导调通话链路图如图2,总导调语音系统的功能有:
1) 实时播放红蓝方模拟器人员的通话情况;
2) 实时播放红蓝方指挥所人员的通话情况;
3) 给系统中所有的人员发出语音广播;
4) 按模拟器分组即红、蓝方角色设置语音通信的范围。
红蓝方指挥所语音系统均需有一台安装语音切换软件的计算机,该计算机的声卡输入连接话筒,输出播放接收到的所有声音。双方指挥所语音系统功能主要有:
1) 实时播放本方模拟器人员的通话情况;
2) 给本方所有的人员发出语音广播;
3) 设置本方模拟器的通信波道。
联网模拟器语音系统由音频处理器、模拟器信号采集计算机、联网语音计算机组成,如图3所示。模拟器语音系统中由模拟器信号采集计算机将采集的声音操作相关信号通过UDP数据包,发给联网语音计算机和音频处理器。音频处理器将一路输入输出语音连到联网语音计算机,联网语音计算机通过使用语音切换软件,实现网络语音通信[4]。
图3 模拟器语音系统组成
为满足上述语音系统所需的功能要求,设计了一种数字音频切换软件,能够实现对数字音频的联网控制。该软件是基于微软.NET平台进行开发,保证软件的适应性和先进性[5-6]。
数字音频切换软件主要由通讯模块、音频切换模块和音频配置模块等三个模块组成。软件的结构图如图4所示。
图4 音频切换软件结构
软件使用UDP网络通信协议,将用户命令通过Socket通讯发送至模拟器,再利用Socket通讯方式接收模拟器反馈的命令执行状态和音频设备当前状态,并将信息转发至音频切换模块,音频切换模块将信息在界面上展示。
音频切换模块启动时首先从数据库中查询配置好的音频设备信息,根据音频设备信息的通道类型、编号和名称,在显示界面显示。当用户在操作界面点击相应的打开或者关闭音频通道按钮时,模块根据用户的点击按钮,生成打开或关闭命令消息,通过调用通信模块将命令发送至模拟器。本模块对通信模块将收到的反馈信息进行处理,将其和发送命令共同在软件显示界面上进行状态更新展示。音频切换显示界面如图5所示。
图5 音频切换显示界面
软件界面中的左通道区域显示所有的左通道音频设备信息,右通道区域显示所有的右通道音频设备信息,用户可将左右通道区域自行定义为主机和从机区域。链接信息下方文本框显示用户发送的命令、命令的反馈信息详情。用户可通过本功能实现将相应音频设备从通话状态切换至空闲状态或从空闲状态切换至通话状态。
音频设备颜色标识:蓝色表示主机空闲状态;绿色表示主机通话状态;橙色表示从机空闲状态;红色表示从机通话状态。
音频配置模块主要功能是从数据库信息中查询当前配置好的音频设备,并对其进行增加、删除和修改可用的音频设备,生成的音频设备数据库文件供音频切换模块使用,软件界面如图6所示。
图6 音频设备配置界面
音频设备数据库使用小型关系型SQLite数据库来存储可用的音频设备信息。SQLite数据库是一种嵌入式开源的关系型数据库,具有零配置、无服务器、自包含等特点,能方便、快捷地实现对音频设备信息的增加、删除和修改[7]。
经过实际测试证明,本文设计的语音通信系统能够满足飞行模拟器联网训练的使用需求,多方通话过程中语音数据流正常,语音质量良好,语音延迟小于100 ms,满足系统设计的指标要求,在飞行模拟器联网训练中收到良好效果。
[1] 张伟,闫景波.飞机模拟器与模拟训练[M].北京:航空工业出版社,2017.
[2] 高煊,郑康平.飞行模拟系统中分布交互式视景的设计与实现[J].指挥控制与仿真,2013,35(5):84-87.
[3] 李雪青,艾祖亮,王再奎,等.飞行模拟器联网训练系统[J].计算机系统应用,2017,26(4):54-60.
[4] 司聿宣,苏远兴,杨正芳.分布式环境实时语音通讯系统的设计与实现[J].武汉工程大学学报,2012,34(5):60-63.
[5] 李宁溪,张峡.基于LAN的语音通讯软件设计[J].计算机工程与应用,2003(4):137-139.
[6] 李建忠.Microsoft.Net框架程序设计[M].北京:清华大学出版社,2003.
[7] MICHAEL O.The Definitive Guide to SQLite[M].US:APress,2006.
[8] 邓晴莺,李国翬,王宝奇,等. 某飞行模拟器视景系统的设计与实现[J].兵工自动化,2016(8):75-79.