APP下载

基于CVI和ASP.NET的测试数据获取方法

2016-06-15周鹏飞李国林林珍玉

兵器装备工程学报 2016年5期

周鹏飞,李国林,林珍玉

(海军航空工程学院,山东 烟台 264001)



基于CVI和ASP.NET的测试数据获取方法

周鹏飞,李国林,林珍玉

(海军航空工程学院,山东 烟台264001)

摘要:为解决某型装备维护性测试过程中数据采集自动化水平较低的问题,考虑测试设备分散在不同测试点,且需频繁切换,各个测试岗位有严格的人员分工,同时又不便为各测试点单独配备工控机,提出一种利用手持设备获取测试数据的方法;该方法基于CVI程序向仪器发送SCPI指令获得测试数据;仪器端操作人员通过手持设备浏览器访问控制界面;巧妙运用MySQL数据库作为SCPI指令发送枢纽;运用该方法实现测试过程中的协调控制,增强系统的适应性和灵活性,满足现场操作相关要求,较大提升了数据采集和管理的自动化水平。

关键词:CVI;ASP.NET;PDA手持设备;MySQL数据库;SCPI语言

借助于计算机技术、电子技术和通信技术的蓬勃发展,导弹系统的设计日益精密,同时结构变得更加复杂,这就对导弹的日常测试和维护提出更高要求[1]。某型导弹弹头测试系统由于受到任务分工和保密制度限制,各测试设备散布在不同岗位,空间跨度较大,且现场条件不允许为各岗位配备工控机。因此,暂时未能组建标准化、模块化的自动测试系统,测试数据的采集和管理难度较大[2]。

在测试项目中,经常选择Labwindows/CVI作为测试工具软件,在与数据库通信时,使用NI公司提供的SQL ToolKit工具包[3-4]。测控软件可以将被测设备的各项测试指令存入到数据库中,从而实现测试流程与测试软件的相对独立,而且在测试过程中的一些测试信息、测试结果也可存入数据库中,便于查询,这样大大增强了测试软件的灵活性和可移植性[5-6]。

为实现各分散测试点测试数据的自动采集,本文提出了一种利用网页进行协调控制的数据获取方法。该方法不改变人员操作规程,充分利用现有测试设备,用一台工控机及若干手持设备配合相关软件构建测试数据自动采集平台。

1测试数据自动采集平台的构建

测试系统中的各型测试设备散布在不同岗位,利用局域网技术将各测试点的测试设备和上位机连接起来,形成分布式数据采集平台。同时为各个测试岗位配备PDA手持设备,经无线局域网与上位机通信。与获取仪器数据相关的SCPI指令存储在上位机的MySQL数据库中;操作人员通过PDA浏览器进入网页控制界面,改变数据库中指令列表的SCPI指令状态;上位机的CVI程序不间断扫描SCPI指令列表,从中取出处于激活状态的指令,发送给相应仪器,并取回测试数据存储在数据库的数据表中。

1.1数据采集系统硬件组成

系统测试设备主要包括数字示波器、功率计、频谱分析仪、数字万用表、矢量网络分析仪等。各种仪器的程控接口各不相同,主要有USB、RS232串行接口及GPIB、LAN接口。根据各仪器的总线接口种类和实际位置分布,确定选用不同的程控接口。将所有仪器通过接口转换模块E5810B转换为LAN口连接至交换机,而上位机从另一端连接至交换机。此外,上位机和PDA手持设备同时连接到无线AP,建立PDA和上位机之间的通信连接[7]。系统硬件构成如图1所示。

图1 数据采集平台硬件连接

1.2数据采集系统软件架构

数采系统的软件可分为3个模块:数据库模块、Web应用程序模块和数据采集程序模块。3部分软件均部署在上位工控机上。

1)数据库模块,该模块主要用来存储仪器的SCPI命令、仪器的相关信息(包括仪器名、VISA地址以及会话句柄)、从仪器取回的测试数据以及操作人员信息。选用MySQL为数据库管理系统,创建数据库文件,并在其中建立相应的数据表,包括SCPI命令列表、仪器信息表、测试数据表和用户信息表。定义各数据表之间的约束关系,建立存储过程、视图供CVI程序和ASP.NET应用程序调用,提高代码的重用性及运行效率;

2)Web应用程序模块,主要用来改变数据库中仪器的连接状态和SCPI指令状态信息。选用Microsoft Visual Studio 2008开发ASP.NET Web应用程序,并发布到上位机,然后利用微软自带的IIS(Internet信息服务)组件配置上位机,使其成为Web服务器;

3)数据采集程序模块,实时完成仪器的指令发送和测试数据接收的任务。使用美国国家仪器公司(National Instruments)推出的LabWindows/CVI集成开发环境开发数据采集程序。安装Keysight IO Libraries Suite 软件,用来配置各仪器程控接口的VISA地址并监测硬件连接状态[8]。

2数据采集系统的软件实现

数据采集系统软件设计的目标是在人员操作仪器的同时利用程控接口实现测试数据的自动采集。要实现这个目标,需要3部分软件同时运行,协调工作。

2.1数据采集系统的软件工作流程

测试开始前,数据库中所有仪器连接状态和SCPI命令状态均为“0”;在上位机运行数据采集程序,用户登录成功后依据测试数据表模板创建新数据表;CVI程序对SCPI命令表和仪器信息表进行循环扫描;各岗位PDA操作人员登录Web界面,服务器根据登录用户的权限将页面重定向至指定数据采集项目控制页。

测试开始后,各岗位仪器操作人员打开测试仪器,PDA操作人员点击仪器连接按钮,仪器信息表中相应仪器连接状态更新为“1”;数据采集程序检测到该仪器,根据仪器VISA地址打开仪器,并分配相应句柄,之后将仪器连接状态重新置零;仪器测出相关数据后,PDA操作人点击对应的采集项目按钮,SCPI命令激活状态更新为“1”,数据采集程序检测到处于激活状态的SCPI命令后,将其取出发送给仪器并从仪器取回测试数据放入测试数据表中,将SCPI指令状态置零;待仪器完成所有测试项目后,点击断开仪器按钮,将仪器连接状态更新为“2”,数据采集程序检测到连接状态为“2”的仪器后,断开程序与仪器之间的会话连接;待所有采集项目完成后,数据采集程序以当前时间重命名测试数据表,一次数据采集结束。软件工作流程如图2所示。

图2 数据采集软件工作流程

2.2数据库模块设计

MySQL数据库管理系统具有开源、免费、体积小、便于安装、性能稳定的特点,是一种中小型关系型数据库系统[9],非常适合于本数据采集系统。首先在工控机上安装并配置MySQL服务,在此基础上安装可视化数据库设计、管理工具MySQL Workbench。

在MySQL Workbench中创建数据库文件,并在其中创建与测试数据,采集相关的各个数据表。定义数据表约束条件,防止录入不满足条件的数据;创建索引,以提高数据库检索效率;使用视图简化数据库开发的操作;使用存储过程封装代码,提高MySQL代码重用性;引入事物机制实现数据的一致性以及并发性。MySQL Workbench操作界面如图3所示。

图3 MySQL Workbench中的SCPI命令列表

2.3Web应用程序模块设计

VS(Visual Studio)是微软公司推出的一款功能强大的开发工具集,几乎可以完成所有基于Windows平台的软件开发任务。而ASP.NET作为微软推出的.NET Framework的一部分,是一种全新的在服务器端执行的脚本技术,采用ASP.NET脚本技术的Web应用程序一般用VS开发[10-11]。

在Microsoft Visual Studio 2008中新建ASP.NET Web应用程序项目,在其中添加主页、登录界面以及各个岗位的数据采集界面以及帮助、查询、用户管理等Web窗体。ASP.NET提供了ADO.NET组件访问和操作数据库,默认的数据库是SQL Server,在此选用MySQL数据库。Web应用程序开发完毕后,为使源代码具有可靠的保密性和安全性,对Web应用程序进行网站发布,将发布后的文件夹拷贝到目标计算机。

在上位机上安装Internet Information Services(IIS,互联网信息服务),打开Internet 信息服务(IIS)管理器,将上位机配置成Web服务器。首先将ASP的“启用父路径”属性改为“true”,设置发布文件所在文件夹作为网站的物理路径,接着为站点绑定端口和IP地址,并设置默认文档作为网站的首页,配置完成后,点击启动开始运行Web服务。PDA操作人员通过在浏览器中输入上位机IP地址进入数据采集界面实现相应的控制。运行中的数据采集界面如图4所示。

2.4数据采集程序模块设计

运行数据采集程序,首先进入登录界面,登录用户分为普通用户和管理员两类,管理员除具有普通用户的操作权限外,还具有用户管理,即对用户信息进行增、删、改的权限。登录成功后,程序立即开始不间断扫描数据库中的仪器信息表和SCPI命令列表。仪器连接状态通过LED控件指示,数据采集的实时状态信息显示在文本控件中。从测试仪器取回的数据直接存入数据库文件。测试结束后,根据需要可生成并打印Word报表文件,还可对数据进行查询。数据采集程序主界面如图5所示。

图4 数据采集系统Web操作界面

图5 数据采集程序主界面

3结语

本文概述了一种基于CVI和ASP.NET的测试数据获取方法。该方法综合运用自动测试技术、Web应用技术以及数据库技术,将有线和无线通信相结合,实现特定条件下的测试数据自动采集与存储管理。通过手动控制和程序控制协调配合,保持人员分工和操作规程不变,充分利用现有设备增强测试系统的灵活性和适应性,提高装备保障自动化水平。

所有与测试仪器相关的信息(如SCPI命令、仪器句柄、VISA地址等)均存储在数据库中,因此当测试项目和测试内容需要改变时,只需要在数据库中更改各个数据表即可实现测试系统的维护与升级,显著提升了数据采集系统的可扩展性。

参考文献:

[1]王怡先,马秋,王云鹏.基于多总线融合导弹自动测试系统设计[J].测控技术,2015,34(5):34-36.

[2]姜景伟,李国林,周鹏飞.某型引信自动测试系统接口适配器的设计[J].四川兵工学报,2015(4):25-28.

[3]王昆平,叶海明.LabWindows/CVI数据库管理[J].理论与方法,2009,28(11):30-33.

[4]王建新,隋美丽.LabWindows/CVI虚拟仪器测试技术及工程应用[M].北京:化学工业出版社,2011.

[5]王怡苹.自动测试系统中测试数据管理[J].电子测量技术,2010,33(3):137-139.

[6]赵波,全厚德.LabWindows/CVI平台下的数据库编程[J].微计算机信息,2008,24(2):16-20.

[7]李振坤.基于PDA的无线餐饮点菜应用系统的设计与实现[J].计算机应用研究,2006,23(2):189-194.

[8]吴伟.基于VISA的仪器通信技术的研究与实现[D].西安:西安科技大学,2009.

[9]李荣国,王见.MySQL数据库在自动测试系统中的应用[J].计算机应用,2011,31(2):169-172.

[10]房大伟,吕双.ASP.NET开发实战1200例:第Ⅱ卷[M].北京:清华大学出版社,2011:57-59.

[11]单维峰,白灵.ASP.NET Web应用程序设计教程[M].北京:清华大学出版社,2009:101-113.

(责任编辑周江川)

本文引用格式:周鹏飞,李国林,林珍玉.基于CVI和ASP.NET的测试数据获取方法[J].兵器装备工程学报,2016(5):149-152.

Citation format:ZHOU Peng-fei,LI Guo-lin,LIN Zhen-yu.Acquisition Method of Test Data Based on CVI and ASP.NET[J].Journal of Ordnance Equipment Engineering,2016(5):149-152.

Acquisition Method of Test Data Based on CVI and ASP.NET

ZHOU Peng-fei,LI Guo-lin,LIN Zhen-yu

(Navel Aeronautical and Astronautical University,Yantai 264001,China)

Abstract:To improve the automation level in data acquisition process of certain equipment,considering that the test equipments were scattered in different test points,and need to be frequently switched,and each test posts had strict personnel division,and at the same time,it was not realistic to provide computers for individual posts,a method of using handheld devices was put forward to get test data.Based on the CVI program,the method sent SCPI commands to instruments and obtained test data; Instrument operator logined the control interfaces through browsers of handheld devices; The MySQL database was skillfully applied to be a delivery hub of SCPI commands.The method which enhanced the system’s adaptability and flexibility can realize coordinating control in data acquisition process and meet the field operation requirements.Thus,the automation level of data acquisition and management is significantly improved.

Key words:CVI; ASP.NET; handheld device; MySQL database; SCPI language

doi:【基础理论与应用研究】10.11809/scbgxb2016.05.035

收稿日期:2015-11-09;修回日期:2015-12-20

作者简介:周鹏飞(1991—),男,主要从事装备理论与装备技术研究。

中图分类号:TP274

文献标识码:A

文章编号:2096-2304(2016)05-0149-04