APP下载

反坦克导弹射击虚拟训练系统设计与实现

2017-02-27贺珍妮胡胜利林世聪

计算机应用与软件 2017年2期
关键词:指示灯射击按钮

杨 军 贺珍妮 胡胜利 林世聪

1(装甲兵工程学院兵器工程系 北京 100072)2(装甲兵工程学院基础部 北京 100072)

反坦克导弹射击虚拟训练系统设计与实现

杨 军1贺珍妮2胡胜利1林世聪1

1(装甲兵工程学院兵器工程系 北京 100072)2(装甲兵工程学院基础部 北京 100072)

反坦克导弹射击操作训练系统是射手提高射击技能的重要手段。运用SolidWorks和3dsMax三维建模技术,采用面向对象的设计方法,研发了基于LabVIEW的导弹射击操作虚拟训练系统。系统使用SolidWorks和3dsMax构建了导弹系统WRL三维轻量化模型,利用LabVIEW中创建对象函数和场景对象类方法中的添加对象等三维控件,运用“串联”和“并联”相混合的导弹系统WRL三维模型加载方法,建立了导弹射击操作三维场景,利用LabVIEW中的事件结构和平铺式顺序结构等函数,创建了基于实弹射击的射击操作和飞行控制的动作响应模型,实现了对导弹飞行的操作与控制。

三维建模 LabVIEW平台 导弹射击操作 虚拟训练

0 引 言

目前,导弹射击操作训练主要依赖实装或基于硬件环境的模拟训练系统,这两种训练方式主要存在以下问题:一是训练成本高,装备或硬件系统损坏率高;二是训练设备数量有限,受训人员培训周期长、有效训练时间短,训练效率低;三是训练环境和受训人员的数量受到限制,不能使部队快速提高战斗力。基于其科学性、经济性、直观性和交互性等优势,虚拟训练作为实装训练的重要补充和主要手段已成为信息化条件下提高训练效能的有效途径。本文提出了以基于LabVIEW的虚拟训练替代实装训练的一种技术方法,并给出了某型车载导弹射击操作虚拟训练系统的总体方案和具体实现过程。该系统可用于部队和院校的军事训练和教学训练之中。

1 导弹射击操作过程

某型车载导弹系统主要由导弹、制导系统、发射系统、导弹操控盒(操纵面板)和导弹操纵台等分系统组成。制导系统实现导弹的导引和控制功能,发射系统(发射架和发射托架)实现导弹的发射功能,导弹操控盒实现导弹发射前的状态设置和检查功能,导弹操纵台实现导弹的发射与控制功能。导弹射击操作流程如图1所示。其中,导弹发控程序自检有7个步骤完成对发控系统14个环节的检查,导弹伺服系统协调/归零检查有8个步骤完成对发控系统12个环节的检查,导弹发射程序检查有7个步骤完成对发控系统9个环节的检查。射手主要操纵导弹操控盒和导弹操纵台完成导弹的射击操作,主要包括导弹发射状态的设置、按下发射按钮和控制导弹的飞行并命中目标。在射手全过程的操控中主要涉及到对开关、按钮和瞄准线操控系统的操作,同时射手还要观测各种指示灯的状态显示并根据各种状态判断导弹系统是否可以正常发射。因此,在虚拟训练系统中主要涉及到武器系统的三维建模技术以及指示灯的控制、按钮的控制、发射托架的控制和导弹飞行的控制等问题。

图1 导弹射击操作流程

2 总体方案设计

LabVIEW是NI推出的虚拟仪器开发平台软件,它被视为标准的虚拟仪器控制软件,可采用图形化编程语言搭建各种虚拟仪器系统,实现功能上的仿真与模拟[1]。程序以框图形式表现,利用其直观简便的编程方式、众多源码级的设备驱动程序、多种多样的分析和表达功能支持,研发基于LabVIEW的装备虚拟训练系统是实现部队军事训练的经济、快捷、有效的技术途径。

根据训练科目的目标和要求,制订虚拟训练系统的仿真功能和技术指标,在满足操作界面相似性、训练方法正确性、虚拟现实一致性的基础上,采用面向对象的设计方法,将实际装备上的开关、按钮、指示灯等组件,用LabVIEW中的虚拟控件替代,实现对系统的界面设计、程序设计、功能实现和装备模型仿真。达到了场景中的对象模型与实装外观形状基本相同、空间位置分布正确、软件操作步骤与实际操作规程完全一致、操作者所接收的反馈信息与实际装备相同的训练效果。基于LabVIEW的某型车载导弹射击虚拟训练系统总体技术方案如图2所示。

图2 基于LabVIEW的某型导弹射击虚拟训练系统总体方案

该系统按照功能需求划分为模拟训练模块、交互教学模块、操作考核模块和三维显示模块。其中模拟训练、交互教学、操作考核三个模块单独使用LabVIEW图形编程实现,三维显示模块使用SolidWorks三维建模技术和LabVIEW的图形编程功能实现。系统在LabVIEW环境下设计研发,在Windows系统PC机上运行。

3 三维场景创建

3.1 WRL三维模型构建

首先运用SolidWorks构建导弹、发射架、发射托架、坦克目标靶等部组件系统三维模型,其次利用3dsMax进行轻量化处理(在模型加载时使系统占用内存最小,可减少5~6倍以上),最后运用LabVIEW中的三维控件实现各部组件的约束连接,提高系统的仿真实时性。下面给出导弹WRL三维模型构建的详细过程。

通过对导弹系统外形尺寸的准确测量及对其特征的把握,通过SolidWorks中的拉伸、旋转、切除、镜向、阵列、圆角等功能完成对导弹头部、弹身、尾部、弹翼、舵片等零部件的建模,并生成sldprt格式三维模型文件[2]。使用3dsMax打开该格式文件,重设模型三维空间坐标,通过平移、旋转等操作赋予模型正确的初始位置,将模型进行细节简化处理,减少模型精度位数,缩小三维模型文件占用空间大小,并生成LabVIEW中所需要的VMRL97格式三维模型文件。该模型满足外观尺寸与实装的逼真程度和加载等方面的要求。

3.2 三维场景构建

第创建三维场景与加载WRL模型的方法如图3所示。

图3 三维模型“串联”和“并联”混合加载示意图

使用创建对象函数(Create Object)和三维图片显示控件(3D Picture)创建一个三维场景,然后使用加载VRML文件函数(Load VRML File)加载模型,再调用节点函数(Invoke Node)场景对象类方法中的添加对象(Object.Add Object)将模型加载到三维场景中。系统中将WRL三维模型加载到三维场景中的方式有“串联”和“并联”两种加载方法。“串联”加载如同父子关系,某个对象是另一个对象的父对象,则子对象随同父对象一起变化,这样“串联”加载方式可在相对运动的三维场景中应用,且可在复杂的三维场景中提高编程效率。实现途径是将本层的调用节点函数场景输出端作为上一层调用节点函数的添加对象输入端,本层即为上一层的子对象;下一层的调用节点函数场景输出端作为本层调用节点函数的添加对象输入端,本层即为下一层的父对象,即为“串联”加载方式。例如:发射托架三维模型经VRML文件函数加载后作为本层调用节点函数场景输入端,一方面它是上一层车体部分的子对象,故本层场景输出端连接到上一层车体部分;另一方面它是发射架的父对象,故本层的调用节点函数添加对象输入端连接下一层发射架。本层对象坐标的设置影响到本层以下的子对象,如图4所示。依次添加可构成三维模型的“串联”加载。

图4 发射托架层的WRL三维模型“串联”加载方法

“并联”加载是将多个相互独立的WRL三维模型通过调用节点函数场景对象类方法中的对象:添加对象同时连接到创建对象函数中。例如:车体部分.wrl和坦克目标靶.wrl同层次的模型同时连接至三维场景之中。所构建的三维场景如图6所示。

4 程序设计与实现

程序设计采用面向对象的设计方法,将实装上的开关、按钮、指示灯等用LabVIEW中的虚拟控件替代,通过鼠标点击虚拟设备上的开关和按钮,使受训者所接收的反馈信息与操作实装完全一致,导弹系统三维模型的动作响应也与实装一致。通过训练使受训者能够掌握实装导弹发射与控制等四个训练科目的操作技能。

LabVIEW使用的是图形化的编程语言-G语言,其研发环境包括程序框图和前面板两部分。程序框图是图形化的源代码,如图5所示;前面板是图形化的用户界面。LabVIEW提供了大量的函数库供用户调用。在本系统中主要使用了While循环、条件结构、事件结构等函数结构,同时为实现复杂的逻辑结构程序采用了多层While循环嵌套模式,为避免内部循环重复运行,使用布尔中间变量和平铺式顺序结构相结合的方法实现内部循环只运行一次的功能,保证了程序运行持续响应和用户控制的单次响应。

图5 系统研发环境

4.1 虚拟操作界面

训练系统虚拟操纵界面主要包括题标、训练科目选择、导弹射击操作方法提示、虚拟操控面板、虚拟操控系统和导弹飞行三维场景等部分构成。其输入控件主要有导弹系统各部组件和各种开关及按钮等,显示控件主要有各种指示灯和三维场景显示。某型导弹射击操作训练系统虚拟操作界面即前面板如图6所示。

图6 某型导弹射击操作训练系统操作界面

4.2 指示灯控制程序

指示灯控制程序主要控制9个灯的“亮”、“灭”、“闪烁”和“延迟协调”,以自检指示灯闪烁功能控制程序为例给出实现方法。该程序使用了闪烁属性节点实现了指示灯的闪烁功能。使用布尔中间变量a和自检指示灯局部变量控制条件结构的执行,采用平铺式顺序结构控制数据流的流向。部分程序框图如图7所示。

图7 自检指示灯程序框图

4.3 击发按钮控制程序

当按下击发按钮后,挂弹指示灯熄灭,松开击发按钮时,挂弹指示灯仍然保持熄灭。为实现这一功能,利用击发按钮(SA1)被按下这一事件作为触发信号,触发事件结构运行,使用反馈节点把上次运行以后的数值反馈回超时分支。即当按下击发按钮后,事件结构的输出一直为真,这个结果和电源开关、武器选择等按钮一起决定挂弹指示灯的亮灭。部分程序框图如图8所示。

图8 击发按钮程序框图

4.4 发射托架控制程序

该程序具有发射托架的协调/归零控制功能。主要由条件结构来实现,该结构函数包含协调(数值为2)、等待(数值为1)和归零(数值为0)三个分支。根据布尔中间变量b和协调/归零布尔开关的状态,由Boolean To (0,1)与求和两个函数得到决定程序执行的条件。如表1所示。

表1 发射托架协调/归零条件结构逻辑关系

程序运行逻辑关系如图9所示。设置b初始值为True,当协调/归零开关置协调位时,程序执行分支2,发射托架协调至规定位置(导弹与火炮成一定的角度α),并在协调到位后赋b值为False;当b和协调/归零值分别为True和False时,程序执行分支1,程序进入等待状态;当协调/归零开关置归零位时,b和协调/归零值都为False,程序执行分支0,发射托架回归至初始状态(导弹与火炮夹角逐渐减小至0),并在归零到位后赋b值为True,程序进入分支1等待状态。

图9 程序运行逻辑关系图

程序框图如图10所示。

图10 发射托架协调分支部分程序框图

4.5 导弹控制程序

在LabVIEW中加载三维场景时采用地面坐标系,加载后通过平移函数(SetTranslation)设定各模型的初始位置并完成组配,所构建的三维场景如图6所示。

导弹飞行控制程序根据布尔中间变量c和击发开关的状态,采用与函数实现条件结构真、假两个选择分支。只有当c和击发开关都为True(按下击发按钮)时,程序执行真分支,完成导弹的发射、旋转稳定和飞行控制。使用两个并行的While循环和旋转对象函数控制导弹按要求频率自旋,并通过导弹实测弹道数据改变导弹的空间位置(xi,yi,zi),实现导弹的飞行控制。当导弹飞行结束(导弹命中目标)时,程序退出While循环,同时赋予c为False;否则程序执行假分支,使程序处于发射等待状态,如图11所示。

图11 导弹控制程序设计思路

导弹飞行控制部分程序框图如图12所示。

图12 导弹飞行控制部分程序框图

5 结 语

本文研究了SolidWorks仿真建模技术和基于LabVIEW的虚拟仪器技术,在此基础上研发了某型导弹射击操作虚拟训练系统,该系统具有替代实装训练的功能。取得的创新性研究成果如下:

(1) 研究了三维建模技术,使用SolidWorks构建了导弹系统WRL三维模型,并应用3dsMax对模型进行了轻量化处理,使得LabVIEW加载WRL模型时占用系统内存最小。

(2) 研究了“串联”和“并联”相混合的导弹系统WRL三维模型加载方法。利用LabVIEW中创建对象函数、三维图片显示控件、场景对象类方法中的添加对象等三维控件,使得模型加载时所用控件数量最少且程序简化,建立了形象逼真的导弹射击操作三维场景。

(3) 创建了导弹射击操作和飞行控制的动作响应模型。使用了LabVIEW中While循环、条件结构、事件结构、平铺式顺序结构等函数,建立了射击操作与飞行控制之间的逻辑关系,实现了对导弹飞行的操作与控制。

(4) 研发了导弹射击操作虚拟训练系统。按照实际装备的训练规程,除了导弹飞行控制采用了虚拟系统实现外其它射击操作均与实装相同,可有效实施导弹射击操作训练。该系统能有效地解决部队和院校在导弹射击操作训练和教学时的困难,达到了降低训练费用、提到训练效率、缩短训练周期等目的。

[1] 彭勇,潘晓烨,谢龙汉.LabVIEW虚拟仪器设计及分析[M].北京:清华大学出版社,2011:1-205.

[2] 姚健娣,谢龙汉,杜如虚.SolidWorks2010三维设计及制图[M].北京:清华大学出版社,2011:44-63.

[3] 杨京广,黄威,王洲伟.将虚拟训练引入实践教学研究[J].中国校外教育,2010(20):70.

[4] 张洪亮,陈乔生.虚拟导弹训练系统研究[J].科技研究,2009,25(5):26-29.

[5] 安兴,李刚,徐林伟,等.虚拟现实技术在美军模拟训练中的应用现状及发展[J].电光与控制,2011,18(10):42-46.

[6] 钟孟春,李程,张春林,等.步兵战车反坦克导弹三点法导引弹道视景仿真[J].计算机仿真,2014,31(9):24-27,37.

[7] 石川,张琳娜,刘武发.基于LabVIEW的数据采集与信号处理系统[J].机械设计与制造,2009(5):21-23.

[8] 李程.步兵战车导弹虚拟训练系统关键技术研究[D].北京:中国人民解放军装甲兵工程学院,2014.

DESIGN AND IMPLEMENTATION OF VIRTUAL SHOOTING TRAINING SYSTEM FOR THE ANTI-TANK MISSILE

Yang Jun1He Zhenni2Hu Shengli1Lin Shicong1

1(DepartmentofArmsEngineering,AcademyofArmoredForceEngineering,Beijing100072,China)2(DepartmentofFundamentalCourses,AcademyofArmoredForcesEngineering,Beijing100072,China)

The training system for anti-tank missile shooting operation is a crucial approach for shooters to improve shooting ability. Utilizing the SolidWorks and 3dsMax modeling technology and adopting the design method of facing object, a shooting training system based on the LabVIEW for a Certain Type of Missile is developed. This system utilizes SolidWorks and 3dsMax to build the 3D model of missile system, and uses the object function and 3D control such as adding object in LabVIEW to construct the 3D scene of missile shooting operation. Then, using the function of event structure and tile type structure in LabVIEW to build the respond model of shooting operation and flight control based on firing practice, realizing the operation and control of missile flight.

3D modeling LabVIEW Missile shooting operation Virtual training

2015-10-27。杨军,教授,主研领域:导弹工程。贺珍妮,讲师。胡胜利,助教。林世聪,硕士生。

TP391.9

A

10.3969/j.issn.1000-386x.2017.02.032

猜你喜欢

指示灯射击按钮
当你面前有个按钮
画与理
为什么射击最高的成绩是10.9环,而不是11环
机枪射击十八式
死循环
实战化近距离快速射击方法初探
内心不能碰的按钮
上海大众POLO充电指示灯点亮
美国邦纳 工业智能指示灯
2013年波罗车充电指示灯异常点亮