基于網絡的虛擬儀器測試系統
設計C/S模式時應首先分析系統所要達到的指標和功能要求,在此基礎上,把系統劃分為各個相對獨立的模塊,分配到各個計算機上,每個計算機執行不同的功能,能在客戶機上完成的獨立任務就不要放在服務器上,以減低服務器的工作量。第二,要保證數據在服務器和客戶機、客戶機間可靠的傳輸。設計時需考慮網絡的帶寬要滿足傳輸要求,并減少網絡數據傳輸量。其次主要考慮的一個主要方面是選擇服務器類型。C/S模式中一種最基本的服務類型就是數據庫服務器,還有事務處理服務器、應用服務器、對象服務器類型。
數據庫服務器中,客戶機使用一條SQL命令將服務請求發給數據庫服務器,數據庫將范圍服務結果傳給客戶機。事務處理服務器把完成一項較為復雜的數據處理過程作為一項事務來對待,用一組SQL命令表示事務處理過程,服務器執行完這組命令后將結果返回客戶機。應用服務器用來控制一臺信息、圖象或電子郵件顯示設備,控制電子公告牌、具有下載能力的處理機。對象服務器的應用程序是作為一種通信對象的結構來設計的,即客戶機對象和服務器對象。客戶機對象用一個對象請求來代理它與服務器對象之間的所有通信任務。客戶機對象請求代理在服務器上找到對應的服務器對象,并將結果返回客戶機。
在測試系統中,可以設計具有采集服務的采集服務器,進行數據處理分析的服務器、服務器類型可以是數據庫服務器,監控服務器、信息發布數據顯示等采用應用服務器、對象服務器。根據實際情況選擇合適的服務器類型對提高網絡測試系統的效率很重要。 網絡系統的安全性和可靠性在設計時必須要考慮的一個重要問題,這也是網絡系統的熱門話題,在此不再敘述。
(3)軟件開發方法
由于測試系統各個節點的任務不同,所連接的數據庫管理系統不一定相同,因此測試系統一般希望不依賴數據庫管理系統。所以數據庫的開發常采用ODBC方式,ODBC是一個數據庫訪問的標準接口,可以通過這個接口訪問不同類的數據庫,基本上可用于所有的關系數據庫。不管測試數據庫是哪一種關系數據庫,只要有相應類型數據庫的ODBC驅動程序,就可訪問數據庫。ODBC API包括以下組件:
① 測試應用程序;
②驅動程序管理器:根據應用程序的需要裝載ODBC驅動程序。
③ODBC驅動程序:向指定的數據源提交SQL語句,向應用程序傳送返回結果。
④數據源:用戶要訪問的數據、DBMS及操作系統。
LabVIEW提供了。DBC、SQL、DataSocket開發工具,采用這些工具編程將提高編程效率。DataSocket是NI公司推出的一種面向測量和自動化工程的網上實時數據交換的編程技術。它包括DS Sewer Manager,DS Sewer和DS函數庫這幾個工具軟件,以及DSip協議,通用資源定位符URL和文件格式等技術規范,它能大大簡化Internet網上計算機之間的測控數據交換的編程工作。DS也可以用子一臺計算機內或局域網中多個應用程序之間的數據交換。DS函數庫包含Open,read,writedose等函數,DS技術可在C 語言、VB和LabVIEW等多種開發環境中使用。在遠程數據交換中可考慮采用DataSocket軟件。
若虛擬儀器軟件采用的是VC編寫的,用戶對VC比較熟悉時,可用VC++開發數據庫,VC提供了多種訪問數據庫的方法:ODBC、MFC ODBC、DAO、OLE DB、ADO等。這些技術各有特點。
ODBC可以訪問所有的關系數據庫,不能訪問對象數據庫和其他非關系數據庫,因此對于高層的數據庫應用技術可采用如6C ODBC。MFC ODBC是VC提供的面向對象數據庫類,MFC ODBC類封裝了ODBC API,提供了面向對象的數據庫類,ODBC類主要有Cdatabase,Crecordset,CrecordView等。使用Cdatabase對象類連接數據庫,Crecordset類可以對數據庫記錄查找、排序、添加、刪除、更新等操作。CrecordVIew類用來顯示文檔,使用這些類編寫程序大大簡化了應用程序的編寫。
DAO(數據庫訪問對象)是VC提供的一種通過程序代碼創建和操縱本地的數據庫和遠地的數據,管理數據庫中的對象或結構的機制。DA0支持兩種不同的數據庫環境,一種是使用Micsoft Jet數據庫引擎來訪問Micosoft Jet數據庫數據、Micosoft Jet連接的ODBC數據庫數據等。一種是ODBC Direct工作區,即直接訪問一個ODBC數據庫,可通過ODBC訪問數據庫服務器,無須裝載Micosoft Jet數據庫引擎。利用DAO技術,我們可以訪問從txt文件直到大型后臺數據庫的多種數據庫格式。
OLE DB是一種基于組件對象模型的數據庫接口(Component Object Modul, COM),對所有的文件提供了一個統一的調用接口,既可以訪問關系數據庫,也可以訪問非關系數據(如電子表格、電子郵件、各種文檔、文件等),由于采用COM模型,系統穩定,接口靈活,具有可利用性和封裝性,訪問數據庫速度,快,因為組件化使OLE DB程序實現了功能分配,作為客戶機的數據應用程序只需要完成自己的數據管理功能,作為服務器數據提供程序也只需要完成自己的一部分功能即可。
C/S中對象服務器、應用服務器的開發可采用OLE DB技術。
ADO〈ActiveX Data Object〉是VC提供的又一種面向對象數據庫開發技術。OLE DB可以訪問數據庫應用的能力,但還需要編寫大量的代碼程序。ADO訪問數據庫是通過OLE DB提供程序進行的。ADO技術采用高層訪問技術訪問封裝了的OLE DB中COM接口。它提 種語言的訪問技術,包括VB、VC、VBA、VJ++,同時ADO還可以用描述的腳本語言訪問cript、VCScript等,用ADO開發網頁在客戶機和服務器應用程序中容易建立Internet虛擬儀kkd txxy. LabVIEW和VirSual C++都提供了豐富的服務器和客戶機數據庫軟件工具,根據自己的情況選擇合適的數據庫軟件開發環境將大大提高系統開發的效率。
3、結束語
計算機網絡技術與虛擬儀器技術的發展與結合,進一步拓寬了虛擬儀器的應用,使虛擬儀器在測試自動化、遠程教學方面得以發展和應用。C/S模式的網絡結構根據不同的應用將系統的功能劃分為相對獨立的功能模塊,并在系統內進行合理分配,使網絡虛擬儀器系統性能達到最優。計算機軟件及軟件工具技術的發展與應用使得編寫虛擬儀器系統性能達到最優。計算機軟件及軟件工具技術的發展與應用使得虛擬儀器與網絡系統軟件容易實現,進一步推動了虛擬儀器網絡系統的發展。
評論