周鵬飛,李國林,林珍玉
(海軍航空工程學院,山東 煙臺 264001)
?
基于CVI和ASP.NET的測試數據獲取方法
周鵬飛,李國林,林珍玉
(海軍航空工程學院,山東 煙臺264001)
摘要:為解決某型裝備維護性測試過程中數據采集自動化水平較低的問題,考慮測試設備分散在不同測試點,且需頻繁切換,各個測試崗位有嚴格的人員分工,同時又不便為各測試點單獨配備工控機,提出一種利用手持設備獲取測試數據的方法;該方法基于CVI程序向儀器發(fā)送SCPI指令獲得測試數據;儀器端操作人員通過手持設備瀏覽器訪問控制界面;巧妙運用MySQL數據庫作為SCPI指令發(fā)送樞紐;運用該方法實現測試過程中的協(xié)調控制,增強系統(tǒng)的適應性和靈活性,滿足現場操作相關要求,較大提升了數據采集和管理的自動化水平。
關鍵詞:CVI;ASP.NET;PDA手持設備;MySQL數據庫;SCPI語言
借助于計算機技術、電子技術和通信技術的蓬勃發(fā)展,導彈系統(tǒng)的設計日益精密,同時結構變得更加復雜,這就對導彈的日常測試和維護提出更高要求[1]。某型導彈彈頭測試系統(tǒng)由于受到任務分工和保密制度限制,各測試設備散布在不同崗位,空間跨度較大,且現場條件不允許為各崗位配備工控機。因此,暫時未能組建標準化、模塊化的自動測試系統(tǒng),測試數據的采集和管理難度較大[2]。
在測試項目中,經常選擇Labwindows/CVI作為測試工具軟件,在與數據庫通信時,使用NI公司提供的SQL ToolKit工具包[3-4]。測控軟件可以將被測設備的各項測試指令存入到數據庫中,從而實現測試流程與測試軟件的相對獨立,而且在測試過程中的一些測試信息、測試結果也可存入數據庫中,便于查詢,這樣大大增強了測試軟件的靈活性和可移植性[5-6]。
為實現各分散測試點測試數據的自動采集,本文提出了一種利用網頁進行協(xié)調控制的數據獲取方法。該方法不改變人員操作規(guī)程,充分利用現有測試設備,用一臺工控機及若干手持設備配合相關軟件構建測試數據自動采集平臺。
1測試數據自動采集平臺的構建
測試系統(tǒng)中的各型測試設備散布在不同崗位,利用局域網技術將各測試點的測試設備和上位機連接起來,形成分布式數據采集平臺。同時為各個測試崗位配備PDA手持設備,經無線局域網與上位機通信。與獲取儀器數據相關的SCPI指令存儲在上位機的MySQL數據庫中;操作人員通過PDA瀏覽器進入網頁控制界面,改變數據庫中指令列表的SCPI指令狀態(tài);上位機的CVI程序不間斷掃描SCPI指令列表,從中取出處于激活狀態(tài)的指令,發(fā)送給相應儀器,并取回測試數據存儲在數據庫的數據表中。
1.1數據采集系統(tǒng)硬件組成
系統(tǒng)測試設備主要包括數字示波器、功率計、頻譜分析儀、數字萬用表、矢量網絡分析儀等。各種儀器的程控接口各不相同,主要有USB、RS232串行接口及GPIB、LAN接口。根據各儀器的總線接口種類和實際位置分布,確定選用不同的程控接口。將所有儀器通過接口轉換模塊E5810B轉換為LAN口連接至交換機,而上位機從另一端連接至交換機。此外,上位機和PDA手持設備同時連接到無線AP,建立PDA和上位機之間的通信連接[7]。系統(tǒng)硬件構成如圖1所示。
圖1 數據采集平臺硬件連接
1.2數據采集系統(tǒng)軟件架構
數采系統(tǒng)的軟件可分為3個模塊:數據庫模塊、Web應用程序模塊和數據采集程序模塊。3部分軟件均部署在上位工控機上。
1)數據庫模塊,該模塊主要用來存儲儀器的SCPI命令、儀器的相關信息(包括儀器名、VISA地址以及會話句柄)、從儀器取回的測試數據以及操作人員信息。選用MySQL為數據庫管理系統(tǒng),創(chuàng)建數據庫文件,并在其中建立相應的數據表,包括SCPI命令列表、儀器信息表、測試數據表和用戶信息表。定義各數據表之間的約束關系,建立存儲過程、視圖供CVI程序和ASP.NET應用程序調用,提高代碼的重用性及運行效率;
2)Web應用程序模塊,主要用來改變數據庫中儀器的連接狀態(tài)和SCPI指令狀態(tài)信息。選用Microsoft Visual Studio 2008開發(fā)ASP.NET Web應用程序,并發(fā)布到上位機,然后利用微軟自帶的IIS(Internet信息服務)組件配置上位機,使其成為Web服務器;
3)數據采集程序模塊,實時完成儀器的指令發(fā)送和測試數據接收的任務。使用美國國家儀器公司(National Instruments)推出的LabWindows/CVI集成開發(fā)環(huán)境開發(fā)數據采集程序。安裝Keysight IO Libraries Suite 軟件,用來配置各儀器程控接口的VISA地址并監(jiān)測硬件連接狀態(tài)[8]。
2數據采集系統(tǒng)的軟件實現
數據采集系統(tǒng)軟件設計的目標是在人員操作儀器的同時利用程控接口實現測試數據的自動采集。要實現這個目標,需要3部分軟件同時運行,協(xié)調工作。
2.1數據采集系統(tǒng)的軟件工作流程
測試開始前,數據庫中所有儀器連接狀態(tài)和SCPI命令狀態(tài)均為“0”;在上位機運行數據采集程序,用戶登錄成功后依據測試數據表模板創(chuàng)建新數據表;CVI程序對SCPI命令表和儀器信息表進行循環(huán)掃描;各崗位PDA操作人員登錄Web界面,服務器根據登錄用戶的權限將頁面重定向至指定數據采集項目控制頁。
測試開始后,各崗位儀器操作人員打開測試儀器,PDA操作人員點擊儀器連接按鈕,儀器信息表中相應儀器連接狀態(tài)更新為“1”;數據采集程序檢測到該儀器,根據儀器VISA地址打開儀器,并分配相應句柄,之后將儀器連接狀態(tài)重新置零;儀器測出相關數據后,PDA操作人點擊對應的采集項目按鈕,SCPI命令激活狀態(tài)更新為“1”,數據采集程序檢測到處于激活狀態(tài)的SCPI命令后,將其取出發(fā)送給儀器并從儀器取回測試數據放入測試數據表中,將SCPI指令狀態(tài)置零;待儀器完成所有測試項目后,點擊斷開儀器按鈕,將儀器連接狀態(tài)更新為“2”,數據采集程序檢測到連接狀態(tài)為“2”的儀器后,斷開程序與儀器之間的會話連接;待所有采集項目完成后,數據采集程序以當前時間重命名測試數據表,一次數據采集結束。軟件工作流程如圖2所示。
圖2 數據采集軟件工作流程
2.2數據庫模塊設計
MySQL數據庫管理系統(tǒng)具有開源、免費、體積小、便于安裝、性能穩(wěn)定的特點,是一種中小型關系型數據庫系統(tǒng)[9],非常適合于本數據采集系統(tǒng)。首先在工控機上安裝并配置MySQL服務,在此基礎上安裝可視化數據庫設計、管理工具MySQL Workbench。
在MySQL Workbench中創(chuàng)建數據庫文件,并在其中創(chuàng)建與測試數據,采集相關的各個數據表。定義數據表約束條件,防止錄入不滿足條件的數據;創(chuàng)建索引,以提高數據庫檢索效率;使用視圖簡化數據庫開發(fā)的操作;使用存儲過程封裝代碼,提高MySQL代碼重用性;引入事物機制實現數據的一致性以及并發(fā)性。MySQL Workbench操作界面如圖3所示。
圖3 MySQL Workbench中的SCPI命令列表
2.3Web應用程序模塊設計
VS(Visual Studio)是微軟公司推出的一款功能強大的開發(fā)工具集,幾乎可以完成所有基于Windows平臺的軟件開發(fā)任務。而ASP.NET作為微軟推出的.NET Framework的一部分,是一種全新的在服務器端執(zhí)行的腳本技術,采用ASP.NET腳本技術的Web應用程序一般用VS開發(fā)[10-11]。
在Microsoft Visual Studio 2008中新建ASP.NET Web應用程序項目,在其中添加主頁、登錄界面以及各個崗位的數據采集界面以及幫助、查詢、用戶管理等Web窗體。ASP.NET提供了ADO.NET組件訪問和操作數據庫,默認的數據庫是SQL Server,在此選用MySQL數據庫。Web應用程序開發(fā)完畢后,為使源代碼具有可靠的保密性和安全性,對Web應用程序進行網站發(fā)布,將發(fā)布后的文件夾拷貝到目標計算機。
在上位機上安裝Internet Information Services(IIS,互聯網信息服務),打開Internet 信息服務(IIS)管理器,將上位機配置成Web服務器。首先將ASP的“啟用父路徑”屬性改為“true”,設置發(fā)布文件所在文件夾作為網站的物理路徑,接著為站點綁定端口和IP地址,并設置默認文檔作為網站的首頁,配置完成后,點擊啟動開始運行Web服務。PDA操作人員通過在瀏覽器中輸入上位機IP地址進入數據采集界面實現相應的控制。運行中的數據采集界面如圖4所示。
2.4數據采集程序模塊設計
運行數據采集程序,首先進入登錄界面,登錄用戶分為普通用戶和管理員兩類,管理員除具有普通用戶的操作權限外,還具有用戶管理,即對用戶信息進行增、刪、改的權限。登錄成功后,程序立即開始不間斷掃描數據庫中的儀器信息表和SCPI命令列表。儀器連接狀態(tài)通過LED控件指示,數據采集的實時狀態(tài)信息顯示在文本控件中。從測試儀器取回的數據直接存入數據庫文件。測試結束后,根據需要可生成并打印Word報表文件,還可對數據進行查詢。數據采集程序主界面如圖5所示。
圖4 數據采集系統(tǒng)Web操作界面
圖5 數據采集程序主界面
3結語
本文概述了一種基于CVI和ASP.NET的測試數據獲取方法。該方法綜合運用自動測試技術、Web應用技術以及數據庫技術,將有線和無線通信相結合,實現特定條件下的測試數據自動采集與存儲管理。通過手動控制和程序控制協(xié)調配合,保持人員分工和操作規(guī)程不變,充分利用現有設備增強測試系統(tǒng)的靈活性和適應性,提高裝備保障自動化水平。
所有與測試儀器相關的信息(如SCPI命令、儀器句柄、VISA地址等)均存儲在數據庫中,因此當測試項目和測試內容需要改變時,只需要在數據庫中更改各個數據表即可實現測試系統(tǒng)的維護與升級,顯著提升了數據采集系統(tǒng)的可擴展性。
參考文獻:
[1]王怡先,馬秋,王云鵬.基于多總線融合導彈自動測試系統(tǒng)設計[J].測控技術,2015,34(5):34-36.
[2]姜景偉,李國林,周鵬飛.某型引信自動測試系統(tǒng)接口適配器的設計[J].四川兵工學報,2015(4):25-28.
[3]王昆平,葉海明.LabWindows/CVI數據庫管理[J].理論與方法,2009,28(11):30-33.
[4]王建新,隋美麗.LabWindows/CVI虛擬儀器測試技術及工程應用[M].北京:化學工業(yè)出版社,2011.
[5]王怡蘋.自動測試系統(tǒng)中測試數據管理[J].電子測量技術,2010,33(3):137-139.
[6]趙波,全厚德.LabWindows/CVI平臺下的數據庫編程[J].微計算機信息,2008,24(2):16-20.
[7]李振坤.基于PDA的無線餐飲點菜應用系統(tǒng)的設計與實現[J].計算機應用研究,2006,23(2):189-194.
[8]吳偉.基于VISA的儀器通信技術的研究與實現[D].西安:西安科技大學,2009.
[9]李榮國,王見.MySQL數據庫在自動測試系統(tǒng)中的應用[J].計算機應用,2011,31(2):169-172.
[10]房大偉,呂雙.ASP.NET開發(fā)實戰(zhàn)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