两栖模拟训练系统中语音通信模块的设计与实现
2017-03-03韩晓光赵志军
韩晓光 徐 瑜 赵志军
(海军陆战学院 广州 510430)
两栖模拟训练系统中语音通信模块的设计与实现
韩晓光 徐 瑜 赵志军
(海军陆战学院 广州 510430)
论文首先阐述了语音通信模块对于两栖模拟训练系统的重要意义,提出了语音通信模块的功能需求;其次,介绍了语音通信模块的基本架构及其工作流程;最后,对语音通信模块开发过程中遇到的问题进行了分析,并提出解决方法,实际应用结果表明论文设计实现的通信模块完全满足两栖模拟训练系统的通信功能需求。
两栖作战; 模拟训练; 语音通信
Class Number TJ810
1 引言
作战指挥训练是两栖模拟训练系统的重要功能之一,语音通信模块是支撑作战指挥训练的重要模块,由于两栖模拟训练指挥层级的复杂性和可变性,现有的语音通信设备和语音通信仿真软件不能满足两栖模拟训练系统的功能需求,开发符合两栖模拟训练系统功能需求的语音通信模块,对于完善两栖模拟训练系统功能组成和提高训练效益具有重要意义[1~2]。
2 语音通信模块的功能需求
语音通信模块是两栖模拟训练系统中的训练辅助模块,在两栖指挥模拟训练过程中,用作两栖模拟训练系统中各席位之间的指挥通信仿真平台,依据不同的训练科目和组训规模,语音通信模块具有不同的通信层级结构,具体来讲,两栖模拟训练系统中的语音通信模块具备以下功能特点[3~5]:
1) 广播功能
广播功能是指一对多的单向语音传输功能,通常用于总导演的全体通播或者单方导演的本方通播,对于总导演的全体通播来讲,无论各个训练端在何种状态下,均能收到总导演的广播信息;对于单方导演的本方通播来讲,无论本方各个训练端在何种状态下,均能收听到本方导演的广播信息,但是对方的任意客户端不能接收到本方的广播信息。
2) 分组功能
分组功能是指基于所属方和指挥层级信息,依据语音通信模块所在的席位属性,对语音通信系统中各客户端进行分组的功能,本系统中的语音通信模块架构采用2级分组模式,第一级分组包括:总导演、单方导演、分队指挥员,其中,总导演只有一级分组,单方导演又分为红方导演、蓝方导演等二级分组,分队指挥员又分为水面舰艇分队指挥员、登陆兵力分队指挥员、航空兵力分队指挥员等二级分组,根据客户端所在的不同分组,赋予客户端相应的访问权限。
3) 点对点通信功能
点对点通信功能是指在通信规则允许的前提下,系统中的任意两个通信终端可以随时建立排外的专用通信通道,这种通道能够动态生成和删除,主要用于处理系统预设通信规则之外的通信请求。
3 语音通信模块的基本架构与工作流程
语音通信模块由一台服务器和多台客户机组成,它们之间通过局域网进行连接。服务器是语音数据的交互中心,在整个系统运行过程中,语音通信系统服务端以后台服务的形式运行在服务器上,在系统运行过程中并没有前台的界面,若要修改其运行参数,可通过修改.xml格式的配置文件来完成,可修改的具体参数有以下几项:
〈server-name〉两栖模拟训练系统〈/server-name〉;;语音服务器名称
〈motd〉1〈/motd〉;;语音模式
〈max-users〉1000〈/max-users〉;;同时加入语音服务器的终端数量上限
〈auto-save〉true〈/auto-save〉;;是否记录当前服务器连接的终端状态
〈tcpport〉10333〈/tcpport〉;;TCP连接端口号
〈udpport〉10333〈/udpport〉;;UDP连接端口号
〈login-attempts〉0〈/login-attempts〉;;客户端尝试连接最大次数,0表示不限制(以下几项类似)
〈max-logins-per-ipaddr〉0〈/max-logins-per-ipaddr〉;;单个IP地址最多可连接终数量
〈bandwidth-limits〉;;带宽速率限制
〈voicetx-limit〉0〈/voicetx-limit〉;;发送语音数据包带宽速率限制
〈vidcaptx-limit〉0〈/vidcaptx-limit〉;;接收语音数据包带宽速率限制
〈totaltx-limit〉0〈/totaltx-limit〉;;总语音数据包带宽速率限制
〈/bandwidth-limits〉
〈user-timeout〉60〈/user-timeout〉;;客户端心跳检查时间间隔
客户端是与用户直接进行交互的前台程序,按照配置的席位种类,可分为总导演客户端、单(红、蓝等)方导演客户端、各群队指挥客户端等,每个客户端有多个通信进程实例,在不同的服务器通信频道内担负着监听/广播任务,它们之间的功能拓扑结构如图1所示(注:图中的箭头方向表示语音数据的流向)。
图1 语音通信模块中各客户端间的通信关系
关于图1中通信关系的几点说明:
1) 图中仅列出红蓝双方对抗时的语音通信关系,当有第三方加入训练时,可参照红蓝方的通信关系进行布局,另外,各方的编队通道除了水面舰艇还有航空兵、潜艇、陆战兵力等,这些编队的通信关系均可参照水面舰艇编队通道的组织方法,这里不再单独列出。
2) 各个客户端可以同时监听多个通信频道,但同一时间只能在一个通信频道内广播,如:总导演可以监听所有通道,但同一时间只能在总导演通播通道内或者专用通道内进行广播。
3) 在系统通信频道组织结构的设计过程中,红蓝双方的广播通道是相互隔绝的,这样可以确保红蓝双方的语音通信互不影响,以保证红蓝双方指挥的相对独立性。
图2 语音通信系统工作流程
系统的工作流程如图2所示[6],在服务端启动以后,客户端创建连接实例并登录到服务器,然后按照预设席位属性加入到相应的语音通道内,在整个工作过程中,系统有断线重连保护机制,以保证系统正常运行。
4 语音通信模块开发中的问题及解决方法
由于两栖模拟训练系统中语音通信模块的特殊需求,在语音通信系统的开发过程中存在一些难题,这里,将遇到的问题和解决方法总结如下[7~10]:
1) 分组功能的实现方法
对客户端进行分组是保证语音通信按照预定规则工作的必要条件,本文采用建立多个通道的方法,通过设定客户端程序对不同通道的访问权限和语音收发规则,间接实现对各语音客户端的分组。以两栖模拟训练系统中红方水面舰艇编队指挥席位的语音通信客户端为例,系统共创建五个实例进程,进程一加入总导演通播通道内且仅具有监听属性,用于监听总导演的播报信息;进程二加入红方导演通播通道内且仅具有监听属性,用于监听本方导演的播报信息;进程三加入红方水面舰艇通道内且具有播报和监听属性,用于进行本方编队的指挥和协同;进程四根据操作人员需要加入特定的红方通道内具有播报和监听属性,用于与其它席位通信;进程五加入席位自身的监听通道内具有监听属性并在其它席位呼叫时获得播报属性,用于处理本方其它席位的呼叫通信,其中,具有播报属性的进程之间存在互斥关系,不会在同一时间工作。
2) 提高通信稳定性的方法
由于训练网络中存在众多的训练终端,网络带宽的使用率较高,语音通信模块难免受到影响,为提高语音通信系统使用的稳定性,语音通信模块使用了巡查和重连机制,巡查机制指客户端每秒会向服务端发送带有时间戳的数据包,服务端通过对比最后到的数据包时间戳和当前时间来判断客户端是否掉线,若客户端掉线,服务端会发出重连指令;重连机制指客户端在收到服务端发送的重连指令或通过异常处理机制捕获到异常时,客户端首先记录当前各个实例进程的状态(所在通道编号、播报、监听状态等),然后按照图2的流程重新连接至服务器,最后在恢复各个实例进程的状态,通过试验表明,整个过程用时不到1s,完全不影响系统的正常使用。
3) 通用客户端平台的实现方法
不同的指挥训练席位对语音通信模块客户端的需求不尽相同,而且这种需求是在不断变化的,做成固定样式的客户端不能满足系统需求,本文中的客户端采用通用平台的设计方法,可以根据配置文件指定的功能属性,动态生成满足需求的客户端,其中,配置文件的部分内容如图3。
图3 客户端启动配置文件的部分内容
在具体使用过程中,通过修改以上配置文件内容,动态生成满足不同席位需求的客户端程序,实现了客户端平台通用化的功能需求。
5 结语
本文设计的语音通信模块克服了以往两栖模拟训练系统中语音通信模块存在的不足,完全实现了两栖模拟训练系统对语音通信模块的功能需求,实际应用结果表明模块具有界面友好、使用方便、占用带宽小、通信质量好等特点,大大提高了训练效益。
[1] 彭汉国,吉顺祥,伍治海,等.基于PC的视音频监控系统设计与开发[J].舰船电子工程,2008,28(2):131-133.
[2] 贺思,刘德良,李正宙,等.短波电台模拟训练系统的设计与实现[J].通信技术,2011,44(4):85-86.
[3] 司聿宣,苏远兴,杨正芳,等.分布式环境实时语音通讯系统的设计与实现[J].武汉工程大学学报,2012,34(5):60-63.
[4] 刘豫军,夏聪.支持大规模语音实时通讯的分布式云服务安全架构设计研究[J].网络安全技术与应用,2015,(5):121-122.
[5] 董志明,王凯,彭文成,等.新型指控通信装备仿真训练系统设计与实现[J].系统仿真学报,2010,22(1):93-95,101.
[6] 曾柏华.短波数字电台模拟训练器的设计与实现[D].成都:电子科技大学,2009.
[7] 谢铁城,达新宇,刘芸江,等.某电台网络模拟训练系统的设计与实现[J].计算机测量与控制,2010,18(5):1151-1153.
[8] 鲁远曙.超短波通信在未来舰船编队中应用分析[J].舰船电子工程,2008,(8):9-10.
[9] 聂卫国.分布式作战指挥模拟训练系统中语音通信仿真研究[J].舰船电子工程,2015,(3):59-62.
[10] 张欣景,赵志军,谢国新,等.通用超短波语音通信仿真模块的设计与实现[J].舰船电子工程,2010,30(9):113-116.
Design and Implementation of Voice Communication Module in Amphibious Simulation Training System
HAN Xiaoguang XU Yu ZHAO Zhijun
(Naval Marinie Acadamy, Guangzhou 510430)
This paper describes why the voice communication module is important for amphibious training simulation system, puts forward the function requirements of voice communication module. Then, it introduces the basic structure of voice communication module and its working process. Finally, problems of the voice communication module in the development process are analyzed, and the solving method is put forward. Application results prove that the proposed communication module can satisfy the demand of communication function amphibious simulation training system.
amphibious warfare, simulation training, voice communication
2016年8月1日,
2016年9月19日
韩晓光,男,硕士,讲师,研究方向:模拟训练与仿真。徐瑜,男,博士,讲师,研究方向:模拟训练与仿真。赵志军,男,副教授,研究方向:模拟训练与仿真。
TJ810
10.3969/j.issn.1672-9730.2017.02.019