李翔飞 杨 臻 余红英 王圣辉
针对目前对通信电台的模拟仿真软件大部分局限在对操作界面的平面模拟,且不能有效实现模拟电台之间、模拟电台与半实物模拟器之间的语音通信功能等突出问题,提出了利用Unity3D 游戏引擎开发平台,结合3DsMax 建模软件建立通信电台三维立体模型,以C#为编程工具,并通过调用SIP 语音程序模块,开发出基于UDP 通信协议的模拟电台通信仿真训练系统。该系统可进行电台参数的实时更新上报,可组建即时语音通信网络。实验证明,该系统在导控软件支持下能够实现与实装一致的通信组网、语音会话功能,实现对战场实时通信指挥控制系统的模拟训练。
虚拟现实技术的迅速发展使其应用渗透到社会生产生活的诸多领域。近年来,三维立体呈现技术在军事领域的应用也越来越普遍。特别是在部队军事训练、军事院校教学过程中,此类技术的应用可极大提高训练效果与教学效率。
针对电台通信仿真训练系统构建过程中的缺陷与不足,本文提出了一种利用Unity3D 三维立体开发平台进行电台通信系统模拟仿真的新方法。可实现仿真电台的360°外观浏览、模拟操作。此模拟训练系统通过构建局域网内的SIP语音通信服务端,可实现多个软件终端之间、软件与半实物模拟器之间的实时语音通信。
系统模块组成如图1 所示,模拟训练设备具体工作流程如下。
1)模拟训练设备根据网管对其配置的各类模拟训练设备的设备管理分软件IP 地址向各类模拟训练设备的设备管理分软件进行注册。
2)模拟训练设备注册成功后,根据UDP 通信协议,向设备管理分软件上传数据包,报告当前工作状态。
3)设备管理分软件根据通信的规则作出组网判断后,将该组网判断提交设备管理总软件,同时分配一个空闲的会议电话地址供该次组网通信使用,该会议电话地址将随建链指令一起发送到模拟训练设备,模拟训练设备使用自带的SIP 终端呼叫该会议电话地址即可建立语音通信链路。
4)模拟训练设备在相关参数发生变化时(如退链、重设频率参数、改变工作状态等),需重复过程2 →3。
3dsMax 是一款优秀的电脑三维动画、模型和渲染软件,广泛应用于三维动画、影视制作、建筑设计等各种静态、动态场景的模拟制作。该模型以.fbx 格式导出后供Unity引擎使用。在电台操作程序模块驱动下,可实现各工作旋钮旋转、按键操作、屏幕显示等模拟效果。电台三维立体模型如图2 所示。
UDP(User Datagram Protocol)协议属于传输层协议。面向非连接的UDP 协议就是在正式通信前不必与对方先建立连接,不管对方状态就直接发送,正因为UDP 协议没有连接的过程,所以它的通信效率高。这与现在的手机短信非常相似:你在发短信的时候,只需要输入对方手机号就可以了。
数据帧传输内容与格式如图3 所示。
通过wireshark 抓包软件,提取UDP 注册过程的数据包。本地设备向设备管理分软件发送的注册数据包如图4 所示。说明符合UDP 通信协议的数据传输格式要求。
SIP 会话初始协议(Session Initiation Protocol)是一种信令协议,用于初始、管理和终止网络中的语音和视频会话,具体地说就是用来生成、修改和终结一个或多个参与者之间的会话。SIP 的业务模式是一个点对点协议,其中有两个要素——SIP 客户端和SIP 服务器。
SIP 客户端向服务器端的注册过程如图5 所示。
图1 系统模块组成
图2 电台三维立体模型
图3 数据帧格式
图4 UDP 注册数据包构成详解
图5 SIP 注册流程
图6 通信模块程序流程图
通信模块由UDP 数据通信模块和SIP 语音通信模块两部分组成,通信模块程序流程如图6 所示。
当模拟电台工作模式或参数设置发生变化时,上报设备管理分软件,并经设备管理总软件进行组网判断,作出是否重新分配SIP 会议地址的指令。以设备编号为18、19、20 的模拟电台切换工作模式为例来说明UDP 数据传输与SIP 语音通信的具体过程。
在跳密模式下,设备管理总软件分配会议电话地址,此时,18、19、20 号模拟电台会议号为16000001,如图7 所示。
对图7 显示的模拟设备通信组网状态,设备管理分软件对在线设备的拓扑构成进行了详细记录,如图8 所示。
图7 跳密模式通信组网
图8 在线设备拓扑构成
图9 模拟系统网络连接图
设备管理总软件通过整合设备管理分软件记录的各模拟电台通信组网状态,实时调整处于不同指挥级别(如群、营、连各级指挥所)通信电台的组网连接状态。直观展现模拟战场环境下的通信链路。模拟系统网络连接图如图9 所示。
该系统在控制功能、操作方式、显示界面以及外形、尺寸等方面与实装电台保持一致,在部队军事训练和相关军事院校教学过程中,可极大提高军事训练效果和教学效率。基于Unity3D 三维立体开发平台的虚拟现实技术,在模拟战场环境、实兵对抗演练等军事领域,应用前景广泛。另外,现代战争是信息化战争,本系统开发的数据通信和语音通话功能可扩展应用于其他模拟仿真系统。利用Unity3D引擎,为军事仿真系统的开发提供了一条新途径。