文章编号:1672-9129(2017)07-0055-03
Design of Test System Software About Electric Parameters of an Intelligent Ammunition Based on LabVIEW
GU Li1, ZHANG Xuangong2, WANG Yongnan3
(1.Resident representative of Jinzhou, Military representative office of Shen Yang, Jinzhou City, Liaoning Province, 121000, China; 2. Department of Ammunition, Ordance Engineering College, Shijiazhuang City, Heibei Province 050003, China; 3.66352 troops, Beijing 101508, China)
Abstract:Design of test system software about electric parameters of an intelligent ammunition is introduced. In this paper, total structure of the test system was expounded first, then the design idea of the software was told. The framework of its function was designed to meet the needs of the system. Multithread was solved by producer/consumer model and the use of sub VI made the overall structure of the whole software more modularized and hierarchical. At last the working flow of the software was described. Plenty of experiments showed that the software was reable and could meet the test needs.
Keywords:LabVIEW; test system; multithread; sub VI
引用:谷丽, 张烜工, 王永南. 基于LabVIEW的某智能弹药电参数检测系统软件研究与设计[J]. 数码设计, 2017, 6(7): 55-57.
Cite:GU Li, ZHANG Xuangong, WANG Yongnan. Design of Test System Software About Electric Parameters of an Intelligent Ammunition Based on LabVIEW[J]. Peak Data Science, 2017, 6(7): 55-57.
引言
智能弹药的电参数检测系统对于其状态评估和质量监控的重要性不言而喻。针对某智能弹药缺乏必要测试设备的情况,研究设计了该弹药的电参数自动检测系统。鉴于基于PXI总线的虚拟仪器在军工领域应用的广泛性,为使该达到预期设计目标,特别是满足多通道、多任务的测试要求,本文采用了PXI(PCI Extension for Instrumentation,面向仪器系统的PCI扩展)集成测试技术。
在整个系统的设计中,软件开发是虚拟仪器的关键[1],测试系统的操作控制、数据处理分析、结果显示都由软件实现,故本文重点介绍该测试系统的软件的研究设计。
1 测试系统总体结构介绍
军工测试产品的发展趨势是“模块化”、“系列化”、“通用化”[2],结合部队的通用电子装备保障工程实践,因此将测试系统开发分成两大部分:测试平台与测试适配器。其中测试平台由测试和测量仪器、主计算机、通信总线、连接器和系统软件组成。测试适配器由连接测试对象和测试平台的适配器、电缆等组成。其系统结构示意图如图1所示。
主控计算机运行软件/测试程序对整个测试系统进行管理和控制,并通过各种标准总线与测试仪器连接[3]。需要指出的是,本系统采用嵌入式计算机,通过PXI总线进行通信,实际上上下机位的概念已经逐渐模糊。测试资源与被测对象之间采用标准的连接器-适配器接口进行连接。连接器与测试资源相对应,是测试资源对外的统一的标准接口;适配器与被测对象相对应,主要是为了完成模拟信号的转换、幅值调整、信号变换、数字信号的整形、电平转换、电源激励的隔离和变换等。
2 测试系统软件分析与设计
2.1 测试系统软件总体设计思想概述
在虚拟仪器中,软件即仪表[4]。因此软件的设计是整个系统的核心和关键。NI公司专为虚拟仪表推出的图形化语言开发平台LabVIEW,在仪器控制、虚拟面板设计、信号分析与处理、硬件访问方面具有强大功能[5]。因此在本系统中采用它作为开发平台。
系统操作软件本着“规范化”、“模块化”、“层次化”的软件设计思想[6],但是在开发之前,重中之重是梳理弹药的内部工作流程。因为弹药测试与其他系统测试的不同之处在于弹药含有某些一次性使用的危险部件,相比其他测试而言更加危险,检测时稍不注意错加激励信号,轻则弹药报废,重则威胁人员安全。因此,在掌握弹药工作全过程的基础上,梳理出严格的弹药测试流程,在系统软件设计时进行“锁死”设计,使软件只能按照既定步骤运行,检测开始后尽量减少人的主观行为,只能按照预定测试流程进行测试,以防操作人员误操作而发生事故。
考虑软件系统的设计思路和检测系统的设计需求,测试软件应主要满足以下要求:
(1)可对I/O接口设备的控制,完成对待测参数的采集、分析及处理。
(2)人机界面界面友好,便于工作人员操作。
(3)能够根据检测结果对被测对象性能进行判断,并可将检测结果进行显示、记录及整理存档。
(4)为操作者提供完善的帮助支持,确保检测系统的可操作性,利于检测任务的顺利进行。
2.2 测试系统软件结构设计
根据测试系统的功能需求,设计了测试软件的结构如图2所示。
自检模块是在系统测试之前进行,每次系统运行前都必须强制自检,以保证系统硬件模块运行正常。在自检发现电气连接错误时,自检停止,调整或者修理之后再继续进行,完毕之后才能进行测试。测试模块包括仪器驱动、信号产生、信号采集三个子模块。仪器驱动衔接系统软件与硬件,通过软件调用实现仪器的控制。信号产生模块能够产生用户定义的多种波形信号作为测试的激励。信号采集模块按模块测量功能,或通过开关模块进行通道切换配合,将测试模块和相应的测量通道连接,对不同的测试通道实现电压、电流、频率、延迟时间和电阻等的测量。模块在控制数据采集的同时对测试数据进行相应的数据处理。判断比较模块负责被测对象的质量判断。将出厂标准的检验验收规范置于判断比较模块中,系统自动完成测试数据的比较和判断,输出判断结果,同时进行保存。系统帮助模块主要是为了帮助仪器操作人员熟悉系统的操作流程和操作方法,为操作人员进行功能介绍,顺利进行测试。数据处理模块由数据库接口和数据库管理软件组成,它将自动测试系统记录的数据以数据库的格式保存和管理,便于试验数据的长期保存和调用。
2.3 测试过程的同步信号采集问题及解决方法
在测试过程中发现,在LabVIEW顺序模式下结合While循环的使用开发测试软件,对待测信号进行采集时,当采集时间超过一定时间后,出现数据过多,导致内存不足,系统死机现象,因此采用在生产者/消费者模式下开发数据采集模块对信号进行采集。
本测试系统内数据采集模块由数据采集、数据分析处理显示及结果存储三部分组成。通过事件式程序结构调取不同的功能模块,则每次的数据采集均需经过以上三个过程,才可进入第二轮数据采集,这增加了数据采集、分析处理的周期。基于生产者/消费者模式的数据采集模块,有效地解决了采集数据周期较长导致内存不足的问题。
生产者/消费者结构通过并行方式同时进行两个循环,利用队列的数据存储方式进行,队列的数据存储是开辟一个缓存区,依据FIFO(First Input First Output,先进先出)的原则进行。一个循环(生产者)负责对数据进行采集,放至队列中,同时有循环(消费者)负责从队列中读取采集到的数据,并对其进行处理。循环间相互通信,互不干涉。如果有需要,可以创建多个消费者。生产者/消费者结构中新到的元素被放至队列尾部,即不允许“插队”;马上离队的元素则在队列首部,不允许在数据传输途中离队,当前“最早的”元素离队,这样可确保数据在传输过程中不会出现遗漏的现象。生产者/消费者模式结构如图3所示。
在本测试系统中,为了便于观察各信号产生的先后时间,如自毁信号、测高控制信号、起爆信号等,需要规定统一的时间零点, 在同时计时开始后,各个通道同时对信号开始检测(无论此时有没有信号),这就出现了上文提到的现象,利用生产者/消费者模式很好的解决了这个问题。同步采集的结果显示如图4所示。
2.4 测试软件中的子VI
子VI可供其它VI调用,与子程序类似,是模块化、结构化及层次化VI的关键组成部分,可使整体VI方便调试和维护。因子VI可以在不同程序中重复应用,编程过程中使用子VI在一定程度上可提高编程效率。根据检测系统功能需要及LabVIEW模块化、结构化及层次化的编程特点,可将具有复杂功能的程序拆分成若干子VI,依据具体模块实际需要进行选用,以避免试验过程中操作过于繁琐。
检测系统软件在一些模块的编写过程中,采用了调用子VI的方式,增加了程序的可读性及可维护性,所用到的部分子VI及其主要功能如表1所示。
2.5 测试系统软件工作流程
进入人机主界面之后,在系统测试开始前首先完成系统自检,随后输入相关的测试参数,之后按照预先设定的测试流程自动逐步测试,待检测结束后对数据进行处理判断和存储,最终将数据以表格形式打印出来。具体流程如图5所示。
3 试验验证
测试系统调试完毕后,编写的软件主操作界面,亦即参数设置模块如图6所示。
部分子VI模块如图7所示。
本文簡要介绍了某智能弹药电参数检测系统的总体结构,重点阐述了该系统软件设计的主体思想,设计了软件的主要功能结构,在LabVIEW环境下依靠生产者/消费者模式解决了在实际开发过程中遇到的多线程问题,通过子VI的编写和调用简化了软件的主体结构,体现了模块化和层次化的设计思想。最后介绍了软件的工作流程。目前该软件已经应用在本测试系统中,大量试验表明,该软件性能稳定,能够满足测试需求。
参考文献:
[1]杨为民. 采用虚拟仪器技术的电子通用检测系统[J]. 舰船电子对抗, 2007, 30(3): 110-113.
[2]杨泽望, 苏建刚. 基于PXI总线的制导弹药通用测试系统设计[J]. 火力指挥与控制, 2004, 29(6): 90-93.
[3]卢慧卿, 孟晨, 方丹, 等. 通用检测系统的研究与实现[J]. 弹箭与制导学报, 2010, 30(5): 185-188.
[4]梁志国, 孙璟宇. 虚拟仪器的现状及发展趋势[J]. 测控技术, 2003, 22(12): 1-4.
[5]戴鹏飞. 测试工程与LabVIEW应用[M]. 北京: 电子工业出版社, 2006.
[6]刘登峰, 邵天章, 王琳. 基于LabVIEW的蓄电池内阻测试仪的设计[J]. 测控技术, 2010, 30(3): 103-105.
相关热词搜索: 弹药 检测系统 参数 智能 研究