基于網(wǎng)絡(luò)的虛擬儀器測試系統(tǒng)

相關(guān)專題: 網(wǎng)絡(luò)測試


1、引言



  隨著計算機(jī)技術(shù)、通信技術(shù)與儀器技術(shù)的深入發(fā)展和結(jié)合,使得虛擬儀器得到了進(jìn)一步發(fā)展,虛擬儀器將計算機(jī)資源與儀器硬件、數(shù)字信號處理技術(shù)結(jié)合,把廠家定義儀器功能的方式轉(zhuǎn)變?yōu)橛捎脩糇约憾x儀器功能。用戶可根據(jù)測試的需要,自己設(shè)計所需要的儀器系統(tǒng),利用一種或多種功能的通用模塊,調(diào)用不同功能的軟件模塊,組成不同的儀器功能。在虛擬儀器中,計算機(jī)成為儀器的一部分,使得計算機(jī)可以得到充分發(fā)揮。除了儀器的輸入、輸出、數(shù)據(jù)處理分析、結(jié)果顯示由計算機(jī)完成外,還可組成計算機(jī)網(wǎng)絡(luò)。一個大的復(fù)雜的測試系統(tǒng)往往系統(tǒng)的測量、輸入、輸出、結(jié)果分析分布在不同的地理位置,僅用一臺計算機(jī)并不能勝任測試任務(wù),需要由分布在不同地理位置的若干計算機(jī)共同完成整個測試任務(wù)。計算機(jī)網(wǎng)絡(luò)技術(shù)、總線技術(shù)與數(shù)據(jù)庫技術(shù)的發(fā)展,乃至Internet網(wǎng)的發(fā)展拓展了虛擬儀器測試系統(tǒng)的應(yīng)用范圍。利用網(wǎng)絡(luò)技術(shù)將分散在不同地理位置不同功能的測試設(shè)備聯(lián)系在一起,使昂貴的硬件設(shè)備、軟件在網(wǎng)絡(luò)內(nèi)得以共享,減少了設(shè)備重復(fù)投資。一臺計算機(jī)采集的數(shù)據(jù)可以立即傳輸?shù)搅硪慌_處理分析機(jī)上進(jìn)行處理分析,分析后的結(jié)果可被執(zhí)行機(jī)構(gòu)、設(shè)計師查詢使用,使數(shù)據(jù)采集、傳輸、處理分析成為一體,容易實現(xiàn)實時采集、實時監(jiān)測。重要的數(shù)據(jù)實行多機(jī)備份,提高了系統(tǒng)的可靠性。對于有些危險的、環(huán)境惡劣的不適合人員操作的數(shù)據(jù)采集工作可實行遠(yuǎn)程采集,將采集的數(shù)據(jù)放在服務(wù)器中供用戶使用。虛擬儀器與計算機(jī)網(wǎng)絡(luò)結(jié)合實現(xiàn)儀器的遠(yuǎn)程教學(xué),學(xué)生通過網(wǎng)絡(luò)學(xué)習(xí)儀器、操作儀器,這也是我們學(xué)校實驗室建設(shè)的目標(biāo)。虛擬儀器計算機(jī)網(wǎng)絡(luò)化在測試系統(tǒng)中具有廣泛的應(yīng)用前景。



2、虛擬儀器網(wǎng)絡(luò)測試系統(tǒng)設(shè)計



  虛擬儀器網(wǎng)絡(luò)測試系統(tǒng)的設(shè)計需從虛擬儀器和網(wǎng)絡(luò)技術(shù)兩方面考慮。



 。1)虛擬儀器部分


  分析測試系統(tǒng)的要求和系統(tǒng)的功能,根據(jù)系統(tǒng)功能的要求,在軟件和硬件之間進(jìn)行優(yōu)化選擇,從而確定儀器所必需的硬件模塊,以便用最少的模塊實現(xiàn)儀器的最佳功能。根據(jù)應(yīng)用情況與實際的條件選擇基于計算機(jī)的虛擬儀器的儀器模塊(VXI總線、PCI總線、PXI總線、GPIB儀器),包括傳感器、信號調(diào)理電路、DAQ數(shù)據(jù)采集、信號源等模塊。


  硬件確定以后,主要確定軟件功能模塊,哪些儀器功能由軟件實現(xiàn),將軟件功能劃分為相對獨立的模塊。然后選擇易于編寫的圖形化的軟件平臺。LabVIEW平臺是一種圖形化編程環(huán)境,提供了虛擬儀器的控件、豐富的數(shù)據(jù)處理分析函數(shù)、儀器驅(qū)動程序及數(shù)據(jù)庫工具軟件包,LabVIEW提供的SQL、DataSocket軟件都是容易建立網(wǎng)絡(luò)化測試環(huán)境的軟件包。采用LabVIEW編寫虛擬儀器軟件簡化了程序設(shè)計,提高了效率。我們利用LabVIEW和NI的數(shù)據(jù)采集卡實現(xiàn)了數(shù)據(jù)采集、虛擬示波器、虛擬信號發(fā)生器。


  Virsual C++是一種面向?qū)ο蟮耐ㄓ玫墓δ軓?qiáng)大的程序設(shè)計語言,提供集成性及可視化用戶界面,采用面向?qū)ο蟮某绦蛟O(shè)計方法,它具有底層操作功能,也具有數(shù)據(jù)庫開發(fā)功能,編程靈活,因此也是編程人員常選用的編程語言,我們也用VC++編寫了虛擬儀器平臺,可以組建示波器、頻譜分析儀,信號發(fā)生器,F(xiàn)在我們計劃用VC編寫數(shù)據(jù)庫軟件,實現(xiàn)網(wǎng)絡(luò)化虛擬儀器。



  (2)網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計


  根據(jù)測試系統(tǒng)各部分所處的地理位置和覆蓋的范圍不同可構(gòu)建局域網(wǎng)、城域網(wǎng)、廣域網(wǎng)。一個大的復(fù)雜的測試系統(tǒng)由各個子系統(tǒng)組成,如一個航空白動測試系統(tǒng),一個火炮測試系統(tǒng),要對其進(jìn)行環(huán)境測試、溫度測試、振動測試,還有電子系統(tǒng)、通信系統(tǒng)的測試等等,每個子系統(tǒng)一般在一個單位的小范圍內(nèi),因此可建立局域網(wǎng),然后將每個局域網(wǎng)互聯(lián),形成企業(yè)測量系統(tǒng)。由于Internet網(wǎng)的發(fā)展,一些公用的數(shù)據(jù)還可以通過Internet網(wǎng)將測量數(shù)據(jù)發(fā)布到網(wǎng)上供網(wǎng)上用戶使用,可建立測量發(fā)布系統(tǒng)。對于有些危險的、環(huán)境惡劣的不適合人員操作的數(shù)據(jù)采集工作可實行遠(yuǎn)程采集。


  由于網(wǎng)絡(luò)測試中每個測試點擔(dān)任不同的測試任務(wù),為了減少不必要的重復(fù)工作,通過網(wǎng)絡(luò)實現(xiàn)資源共享,同時要減輕服務(wù)器與各節(jié)點的數(shù)據(jù)傳輸,提高網(wǎng)絡(luò)系統(tǒng)性能,因此服務(wù)器和各個節(jié)點以及各節(jié)點之間協(xié)同工作顯得尤為重要。基于Client/Server模式的分布式計算、分布式處理系統(tǒng)是解決這個問題的最好選擇。基于C/S模式,將系統(tǒng)功能分解到各個節(jié)點,各個節(jié)點有機(jī)配合,用戶在自己的終端上就可以觀察到從服務(wù)器中獲取的數(shù)據(jù)和處理結(jié)果。在C/S中,分客戶機(jī)(Client)程序和服務(wù)器(Sewer)程序。客戶機(jī)程序和服務(wù)器程序可以運(yùn)行在一臺計算機(jī)中,也可運(yùn)行在兩臺或多臺計算機(jī)中,Client程序與Sewer程序相互協(xié)同處理,一個測試系統(tǒng)由一個或承擔(dān)不同任務(wù)的多個客戶機(jī)與一個或多個服務(wù)器組成。客戶機(jī)是用戶與系統(tǒng)的交互接口,提供一個用戶界面,完成用戶命令與數(shù)據(jù)的輸入,顯示服務(wù)器送回的結(jié)果。服務(wù)器接受客戶機(jī)提出的申請,完成所要求的操作并將結(jié)果傳送給用戶。在一個測試系統(tǒng)中,根據(jù)任務(wù)不同,每個服務(wù)器和客戶機(jī)承擔(dān)的任務(wù)也不同,例如可劃分為采集、數(shù)據(jù)處理分析、輸出、監(jiān)控。一臺計算機(jī)采集外部數(shù)據(jù),將來集的數(shù)據(jù)存儲并傳輸給另一臺計算機(jī),它就是服務(wù)器,另外它又需要得到遠(yuǎn)地計算機(jī)的數(shù)據(jù),這時它又成為客戶機(jī)。C/S模式是一種開放式系統(tǒng)的協(xié)同處理工作模式。


  設(shè)計C/S模式時應(yīng)首先分析系統(tǒng)所要達(dá)到的指標(biāo)和功能要求,在此基礎(chǔ)上,把系統(tǒng)劃分為各個相對獨立的模塊,分配到各個計算機(jī)上,每個計算機(jī)執(zhí)行不同的功能,能在客戶機(jī)上完成的獨立任務(wù)就不要放在服務(wù)器上,以減低服務(wù)器的工作量。第二,要保證數(shù)據(jù)在服務(wù)器和客戶機(jī)、客戶機(jī)間可靠的傳輸。設(shè)計時需考慮網(wǎng)絡(luò)的帶寬要滿足傳輸要求,并減少網(wǎng)絡(luò)數(shù)據(jù)傳輸量。其次主要考慮的一個主要方面是選擇服務(wù)器類型。C/S模式中一種最基本的服務(wù)類型就是數(shù)據(jù)庫服務(wù)器,還有事務(wù)處理服務(wù)器、應(yīng)用服務(wù)器、對象服務(wù)器類型。如圖1-4







  數(shù)據(jù)庫服務(wù)器中,客戶機(jī)使用一條SQL命令將服務(wù)請求發(fā)給數(shù)據(jù)庫服務(wù)器,數(shù)據(jù)庫將范圍服務(wù)結(jié)果傳給客戶機(jī)。事務(wù)處理服務(wù)器把完成一項較為復(fù)雜的數(shù)據(jù)處理過程作為一項事務(wù)來對待,用一組SQL命令表示事務(wù)處理過程,服務(wù)器執(zhí)行完這組命令后將結(jié)果返回客戶機(jī)。應(yīng)用服務(wù)器用來控制一臺信息、圖象或電子郵件顯示設(shè)備,控制電子公告牌、具有下載能力的處理機(jī)。對象服務(wù)器的應(yīng)用程序是作為一種通信對象的結(jié)構(gòu)來設(shè)計的,即客戶機(jī)對象和服務(wù)器對象?蛻魴C(jī)對象用一個對象請求來代理它與服務(wù)器對象之間的所有通信任務(wù)?蛻魴C(jī)對象請求代理在服務(wù)器上找到對應(yīng)的服務(wù)器對象,并將結(jié)果返回客戶機(jī)。


  在測試系統(tǒng)中,可以設(shè)計具有采集服務(wù)的采集服務(wù)器,進(jìn)行數(shù)據(jù)處理分析的服務(wù)器、服務(wù)器類型可以是數(shù)據(jù)庫服務(wù)器,監(jiān)控服務(wù)器、信息發(fā)布數(shù)據(jù)顯示等采用應(yīng)用服務(wù)器、對象服務(wù)器。根據(jù)實際情況選擇合適的服務(wù)器類型對提高網(wǎng)絡(luò)測試系統(tǒng)的效率很重要。
  網(wǎng)絡(luò)系統(tǒng)的安全性和可靠性在設(shè)計時必須要考慮的一個重要問題,這也是網(wǎng)絡(luò)系統(tǒng)的熱門話題,在此不再敘述。



 。3)軟件開發(fā)方法


  由于測試系統(tǒng)各個節(jié)點的任務(wù)不同,所連接的數(shù)據(jù)庫管理系統(tǒng)不一定相同,因此測試系統(tǒng)一般希望不依賴數(shù)據(jù)庫管理系統(tǒng)。所以數(shù)據(jù)庫的開發(fā)常采用ODBC方式,ODBC是一個數(shù)據(jù)庫訪問的標(biāo)準(zhǔn)接口,可以通過這個接口訪問不同類的數(shù)據(jù)庫,基本上可用于所有的關(guān)系數(shù)據(jù)庫。不管測試數(shù)據(jù)庫是哪一種關(guān)系數(shù)據(jù)庫,只要有相應(yīng)類型數(shù)據(jù)庫的ODBC驅(qū)動程序,就可訪問數(shù)據(jù)庫。ODBC API包括以下組件:


 、 測試應(yīng)用程序;


 、隍(qū)動程序管理器:根據(jù)應(yīng)用程序的需要裝載ODBC驅(qū)動程序。


 、跲DBC驅(qū)動程序:向指定的數(shù)據(jù)源提交SQL語句,向應(yīng)用程序傳送返回結(jié)果。


 、軘(shù)據(jù)源:用戶要訪問的數(shù)據(jù)、DBMS及操作系統(tǒng)。


  LabVIEW提供了。DBC、SQL、DataSocket開發(fā)工具,采用這些工具編程將提高編程效率。DataSocket是NI公司推出的一種面向測量和自動化工程的網(wǎng)上實時數(shù)據(jù)交換的編程技術(shù)。它包括DS Sewer Manager,DS Sewer和DS函數(shù)庫這幾個工具軟件,以及DSIP協(xié)議,通用資源定位符URL和文件格式等技術(shù)規(guī)范,它能大大簡化Internet網(wǎng)上計算機(jī)之間的測控數(shù)據(jù)交換的編程工作。DS也可以用子一臺計算機(jī)內(nèi)或局域網(wǎng)中多個應(yīng)用程序之間的數(shù)據(jù)交換。DS函數(shù)庫包含Open,read,writedose等函數(shù),DS技術(shù)可在C 語言、VB和LabVIEW等多種開發(fā)環(huán)境中使用。在遠(yuǎn)程數(shù)據(jù)交換中可考慮采用DataSocket軟件。


  若虛擬儀器軟件采用的是VC編寫的,用戶對VC比較熟悉時,可用VC++開發(fā)數(shù)據(jù)庫,VC提供了多種訪問數(shù)據(jù)庫的方法:ODBC、MFC ODBC、DAO、OLE DB、ADO等。這些技術(shù)各有特點。


  ODBC可以訪問所有的關(guān)系數(shù)據(jù)庫,不能訪問對象數(shù)據(jù)庫和其他非關(guān)系數(shù)據(jù)庫,因此對于高層的數(shù)據(jù)庫應(yīng)用技術(shù)可采用如6C ODBC。MFC ODBC是VC提供的面向?qū)ο髷?shù)據(jù)庫類,MFC ODBC類封裝了ODBC API,提供了面向?qū)ο蟮臄?shù)據(jù)庫類,ODBC類主要有Cdatabase,Crecordset,CrecordView等。使用Cdatabase對象類連接數(shù)據(jù)庫,Crecordset類可以對數(shù)據(jù)庫記錄查找、排序、添加、刪除、更新等操作。CrecordVIew類用來顯示文檔,使用這些類編寫程序大大簡化了應(yīng)用程序的編寫。


  DAO(數(shù)據(jù)庫訪問對象)是VC提供的一種通過程序代碼創(chuàng)建和操縱本地的數(shù)據(jù)庫和遠(yuǎn)地的數(shù)據(jù),管理數(shù)據(jù)庫中的對象或結(jié)構(gòu)的機(jī)制。DA0支持兩種不同的數(shù)據(jù)庫環(huán)境,一種是使用Micsoft Jet數(shù)據(jù)庫引擎來訪問Micosoft Jet數(shù)據(jù)庫數(shù)據(jù)、Micosoft Jet連接的ODBC數(shù)據(jù)庫數(shù)據(jù)等。一種是ODBC Direct工作區(qū),即直接訪問一個ODBC數(shù)據(jù)庫,可通過ODBC訪問數(shù)據(jù)庫服務(wù)器,無須裝載Micosoft Jet數(shù)據(jù)庫引擎。利用DAO技術(shù),我們可以訪問從txt文件直到大型后臺數(shù)據(jù)庫的多種數(shù)據(jù)庫格式。


  OLE DB是一種基于組件對象模型的數(shù)據(jù)庫接口(Component Object Modul, COM),對所有的文件提供了一個統(tǒng)一的調(diào)用接口,既可以訪問關(guān)系數(shù)據(jù)庫,也可以訪問非關(guān)系數(shù)據(jù)(如電子表格、電子郵件、各種文檔、文件等),由于采用COM模型,系統(tǒng)穩(wěn)定,接口靈活,具有可利用性和封裝性,訪問數(shù)據(jù)庫速度,快,因為組件化使OLE DB程序?qū)崿F(xiàn)了功能分配,作為客戶機(jī)的數(shù)據(jù)應(yīng)用程序只需要完成自己的數(shù)據(jù)管理功能,作為服務(wù)器數(shù)據(jù)提供程序也只需要完成自己的一部分功能即可。


  C/S中對象服務(wù)器、應(yīng)用服務(wù)器的開發(fā)可采用OLE DB技術(shù)。


  ADO〈ActiveX Data Object〉是VC提供的又一種面向?qū)ο髷?shù)據(jù)庫開發(fā)技術(shù)。OLE DB可以訪問數(shù)據(jù)庫應(yīng)用的能力,但還需要編寫大量的代碼程序。ADO訪問數(shù)據(jù)庫是通過OLE DB提供程序進(jìn)行的。ADO技術(shù)采用高層訪問技術(shù)訪問封裝了的OLE DB中COM接口。它提
種語言的訪問技術(shù),包括VB、VC、VBA、VJ++,同時ADO還可以用描述的腳本語言訪問cript、VCScript等,用ADO開發(fā)網(wǎng)頁在客戶機(jī)和服務(wù)器應(yīng)用程序中容易建立Internet虛擬儀kkd txxy.
LabVIEW和VirSual C++都提供了豐富的服務(wù)器和客戶機(jī)數(shù)據(jù)庫軟件工具,根據(jù)自己的情況選擇合適的數(shù)據(jù)庫軟件開發(fā)環(huán)境將大大提高系統(tǒng)開發(fā)的效率。



3、結(jié)束語



  計算機(jī)網(wǎng)絡(luò)技術(shù)與虛擬儀器技術(shù)的發(fā)展與結(jié)合,進(jìn)一步拓寬了虛擬儀器的應(yīng)用,使虛擬儀器在測試自動化、遠(yuǎn)程教學(xué)方面得以發(fā)展和應(yīng)用。C/S模式的網(wǎng)絡(luò)結(jié)構(gòu)根據(jù)不同的應(yīng)用將系統(tǒng)的功能劃分為相對獨立的功能模塊,并在系統(tǒng)內(nèi)進(jìn)行合理分配,使網(wǎng)絡(luò)虛擬儀器系統(tǒng)性能達(dá)到最優(yōu)。計算機(jī)軟件及軟件工具技術(shù)的發(fā)展與應(yīng)用使得編寫虛擬儀器系統(tǒng)性能達(dá)到最優(yōu)。計算機(jī)軟件及軟件工具技術(shù)的發(fā)展與應(yīng)用使得虛擬儀器與網(wǎng)絡(luò)系統(tǒng)軟件容易實現(xiàn),進(jìn)一步推動了虛擬儀器網(wǎng)絡(luò)系統(tǒng)的發(fā)展。



摘自《東方電子集成商務(wù)網(wǎng)》
   

微信掃描分享本文到朋友圈
掃碼關(guān)注5G通信官方公眾號,免費領(lǐng)取以下5G精品資料
  • 1、回復(fù)“YD5GAI”免費領(lǐng)取《中國移動:5G網(wǎng)絡(luò)AI應(yīng)用典型場景技術(shù)解決方案白皮書
  • 2、回復(fù)“5G6G”免費領(lǐng)取《5G_6G毫米波測試技術(shù)白皮書-2022_03-21
  • 3、回復(fù)“YD6G”免費領(lǐng)取《中國移動:6G至簡無線接入網(wǎng)白皮書
  • 4、回復(fù)“LTBPS”免費領(lǐng)取《《中國聯(lián)通5G終端白皮書》
  • 5、回復(fù)“ZGDX”免費領(lǐng)取《中國電信5GNTN技術(shù)白皮書
  • 6、回復(fù)“TXSB”免費領(lǐng)取《通信設(shè)備安裝工程施工工藝圖解
  • 7、回復(fù)“YDSL”免費領(lǐng)取《中國移動算力并網(wǎng)白皮書
  • 8、回復(fù)“5GX3”免費領(lǐng)取《R1623501-g605G的系統(tǒng)架構(gòu)1
  • 本周熱點本月熱點

     

      最熱通信招聘

      最新招聘信息