基于ZigBee网络的智能靶机显控系统设计与实现

2019-01-17 05:49黄文健李晓明
成组技术与生产现代化 2018年3期
关键词:靶机控系统通讯

黄文健,李晓明

(浙江理工大学 机械与自动控制学院,浙江 杭州 310018)

不管对于部队还是对于民兵,射击训练都是一项热点和必备科目,但是目前训练水平整体还很落后,大多数还是采用人工报靶的方式.这种训练方式效率低下,误差大,射击效果差,训练人员无法根据训练成绩及时进行调整,而且存在一定的安全隐患.少数射击训练场所安装的自动报靶系统只是对报靶数据进行处理,而没有针对整个训练过程进行管理.在大多数射击训练场所,器材的自动化程度较低,人员管理、信息统计、举靶、报靶、成绩录入及评定等都由人工完成,工作量大,效率低,也不便于指挥人员实时了解射击情况.

伴随着移动物联网技术的快速发展以及装备自动化程度的不断提高,人们对训练设备的无线化、网络化、智能化需求越来越强烈.因此,具有不同学科背景的相关学者曾对智能靶机系统进行了探索.顾丽莉基于图像自动处理技术构建的报靶管理平台,主要解决报靶环节的自动化问题[1].张晓锟设计了基于图像处理技术的自动报靶系统[2].有的学者采用激光枪和激光接收器来实现模拟打靶[3].这些研究主要针对的是系统中某一具体模块或者只是寻求真实训练某一环节的替代方法,并未将真实训练的过程作为整体进行考虑,因而未能开发出完整实用高效的训练系统.本文针对训练全过程,进行基于ZigBee网络智能靶机显控系统的开发,以期实现“数据实时釆集、无线网络数据透传、APP准确控制、上位机集中管理”的设计目标.

1 总体方案设计

1.1 系统设计要求

基于ZigBee网络的智能靶机显控系统需要根据射击训练大纲,结合射击训练科目,最终满足各种枪支、时间和地形等条件下训练任务的需求.

1.1.1 硬件设计要求

(1) 标准化、易扩展.严格参照ZigBee规范来设计智能靶机显控系统的控制模块、数据传输模块、传感器模块,以保证各模块更换简单,有良好的兼容性、扩展性以及较低的整合难度.

(2) 高效、节能.一方面要求靶机举靶、隐靶等物理动作摩擦小且效率高;另一方面要求降低ZigBee模块能耗,增加电池工作时长,保证无线传感网络的有效寿命.

(3) 可靠、稳定.训练场地如果在室外就可能受到外界信号和地形的干扰,因此要求ZigBee模块有很强的抗干扰能力,同时室外无线传感网络应能有效组网,且通讯稳定可靠.

1.1.2 软件设计要求

(1) 遵循协议规范.软件设计模块化,制定并严格遵循协议规范,提升系统兼容性,设计统一的数据格式,使传输稳定,解析简单.

(2) 全自动组网.系统网络必须具有自动组网、组网灵活方便、修复能力强等特点,且要保证网络覆盖面积广,无通讯盲区.

(3) 数据交互可靠.前端与服务器,服务器与靶机之间的通讯要简单、可靠.

1.1.3 功能设计要求

(1) 状态信息监测功能.无线传感网络应能实时通过传感器获取靶机温度、电压、GPS信号、电量等数据,并通过协调器发送给PC上位机,以方便使用者及时了解靶机的状态变化.

(2) 多模式控制功能.用户应能根据训练要求设置参数,灵活地控制靶机(可选择手动控制模式、半自动控制模式、全自动控制模式、智能控制模式等),以最大限度地展示智能靶机显控系统的高科技优势.

(3) PC上位机集中管理功能.上位机应能实时显示靶机的状态数据和打靶数据,并能够对靶机进行精准控制.

1.2 系统模型

根据基于无线传感网络的智能靶机显控系统的设计要求(硬件要求、软件要求和功能要求),可得出该系统的总体设计模型(图1).无线传感网络主要包括Coordinator(协调器)和终端这两种逻辑设备.该网络具有很强的“自愈”能力,每个终端设备都能够作为一个中继器,使靶机连接附近的其他靶机而实现与服务器相连.协调器上电后能够实现自动组网、地址分配、节点管理以及上位机通讯等.终端设备可自由申请入网或离网.服务器连接协调器串口,以接收无线传感网络实时采集的靶机参数(电量、GPS信号、温度等)、靶机工作状态、故障报警等数据.移动终端设备通过WiFi连接服务器,并且能够通过服务器对底层靶机进行控制,以便用户使用可视化界面对靶机进行操作和管理.

图1 智能靶机显控系统的总体设计模型

1.3 系统工作流程

根据智能靶机显控系统的软件设计和功能设计要求,可制定图2所示的系统工作流程.该流程图(又称为输入-输出图)能够直观地描述系统工作的具体步骤,是UML[4]中一种重要的建模思路.在该系统工作流程中,组织人员负责对训练相关辅助信息的填写以及对靶机的操控;训练人员根据训练任务进行相应的训练;系统则根据评估标准将打靶信息生成成绩信息.成绩信息可在APP上查询,也可以生成Excel表格.

图2 智能靶机显控系统的工作流程

2 系统设计和实现

智能靶机系统的设计主要包括:服务器端开发、通讯协议制定和移动端的开发.

2.1 服务器端开发

Java是一种跨平台、适合于分布式计算环境的面向对象的编程语言,具有通用性、高效性、平台移植性、安全性以及支持多线程开发等优点.智能靶机系统的服务器端开发优先选用Java语言.对服务器而言,其重要功能是完成与各移动端和靶机节点之间的通讯,确保通讯过程中数据传输的稳定性、可靠性和可控性.服务器端的主要模块包括:客户端接口模块、数据库模块、靶机通讯模块、控制模块和成绩模块.

(1) 客户端接口模块负责处理客户端的数据请求(一个请求对应一个处理流程),并返回处理结果.数据被存储在队列中或者数据库中.客户端接口模块可根据需要进行功能扩展.

(2) 数据库模块负责数据的存储和读取.

(3) 靶机通讯模块用来实现服务器和靶机之间的通讯,以保证服务器和靶机之间的连接安全、有效、高速.

(4) 控制模块用来有序控制靶机,使靶机能够按照事先安排的步骤运动.控制模块可选用手动控制、半自动控制、全自动控制和智能控制等模式.其中,智能控制模式可通过获取训练人员和靶机的GPS信号,比较两者的距离,在训练人员和靶机的距离小于设定值时,让靶机起靶.

(5) 成绩模块负责成绩生成与查询.它依据评估标准(由训练组织人员在训练开始前选定此次训练的评估标准)对射手的成绩进行评估,可生成相应的成绩等级.系统生成的成绩可供查询.

2.2 通讯协议制定

2.2.1 服务器与客户端的通讯

HTTP[5]具有支持C/S模型、请求简单快速(当客户端发起请求时,只需传送请求方法和路径即可)、信息传输灵活等优点.因此,本系统采用HTTP协议.其中通讯内容采用目前流行的JSON[6]数据格式,因为与XML相比,JSON(JavaScript Object Notation)更加简洁、轻便,不管是编写、传输还是解析都更加高效.此外,它节省空间,通用性强,目前常用的主流语言都能为JSON提供原生支持.

对服务器和客户端之间的通讯过程进行分析,可得出图3所示的C/S通讯流程.

图3 C/S通讯流程

2.2.2 服务器与靶端节点的通讯

ZigBee技术[7]是一种先进的近距离、低复杂度、低功耗、低数据速率、低成本、高可靠性、高安全性的双向无线通讯技术.它具有组网简便、使用灵活等优势,因此服务器和靶机(靶端节点)之间的通讯采用ZigBee网络并遵循ZigBee协议.一个ZigBee协调器能够同时管理255个单层网络节点,可一次性满足兵员为一个营的攻防战斗目标保障的需求.

对服务器和靶端节点之间的通讯交互过程进行分析,可得出图4所示服务器与靶端节点之间的通讯流程.

图4 服务器与靶端节点之间的通讯流程

2.3 移动端开发

HTML5[8]标记语言简便、功能强大,为互联网应用程序提供了重要的支持.它与CSS3技术结合应用,可以大大优化网页和网站的性能、布局等.移动端与服务器端使用JavaScript,可进行实时数据交互.因此,本文采用H5+CSS3+JS结合的前端技术来开发智能靶机显控系统的APP[9],并通过Hbuilder工具进行打包发布[10].

为了实时显示训练场地中人员和靶机的位置,系统会调用高德地图提供的API(Application Programming Interface)来植入地图,并可在地图中分别显示人员和靶机的图标.点击人员图标,可显示人员的相应信息;点击靶机图标,可显示靶机的相应信息.图标的位置主要根据人员和靶机的GPS数据来实时定位.掌握了位置信息,可以丰富训练内容,也可让组织人员时刻了解训练人员的位置和训练情况.

2.4 部分APP界面

可视化界面使得用户操作更加简单便利.智能靶机系统的APP中包含很多页面,如首页(图5)和控制模式(图6)等.

图5 APP中的首页

图6 APP中的控制模式

3 系统运行测试

在整个系统的开发过程中,软件测试是非常重要的一部分,是系统能否正常运行的关键.通过测试可以了解系统运行的稳定性和实用性.

(1) 登录功能测试.根据用户名和密码,测试系统能否有效地检查登录者身份.

(2) 控制功能测试.在平板电脑上操控靶机,看靶机能否有效执行命令,包括起靶、倒靶、照明灯开关、GPS开关等.

(3) 人员信息管理测试.它主要是对人员信息增、删、改、查的测试.

(4) 控制模式测试.它主要测试半自动控制、全自动控制、智能控制等模式,制定控制方案,检查靶机能否严格按照方案执行.

(5) 成绩管理测试.选定评定标准,通过针扎靶纸的方式模拟士兵训练,产生数据,统计成绩,存入数据库,最后查询成绩并检查成绩是否合理.

(6) 打印测试.通过它,将个人或单位的成绩制成Excel表格,以验证系统成绩打印模块的功能.

测试证明,系统运行正常,各业务流程的运行无障碍,数据传输流畅,界面设计合理,比较符合当前国内用户和训练相关人员的使用习惯.

4 结束语

本文通过UML建立系统模型,采用Java和HTML5等技术完成了系统软件的开发,实现了智能靶机显控系统的通讯协议制定、逻辑控制、数据传输等主要功能.该系统的功能较其他打靶系统功能更为强大,具有良好的可扩展性和可移植性,而且可在多种平台和可系统中进行部署发布.

本系统尚存在不足之处,在没有网络信号的情况下无法准确定位训练人员的位置.今后将针对移动靶、坦克靶等进行设计,实现集多兵种、多装备训练控制于一体的集成控制系统.

猜你喜欢
靶机控系统通讯
《茶叶通讯》简介
《茶叶通讯》简介
通讯报道
关于DALI灯控系统的问答精选
联调联试中列控系统兼容性问题探讨
靶机系统的发展趋势
美国克雷托斯公司扩大靶机研发和制造
通讯简史
一种新型列控系统方案探讨
靶机