監(jiān)理公司管理系統(tǒng) | 工程企業(yè)管理系統(tǒng) | OA系統(tǒng) | ERP系統(tǒng) | 造價咨詢管理系統(tǒng) | 工程設計管理系統(tǒng) | 簽約案例 | 購買價格 | 在線試用 | 手機APP | 產(chǎn)品資料
X 關閉

遠程虛擬儀器管理實戰(zhàn)

申請免費試用、咨詢電話:400-8352-114

來源:泛普軟件

虛擬儀器技術的出現(xiàn)徹底打破了傳統(tǒng)儀器由廠家定義、用戶無法改變的模式,用戶借助通用的儀器硬件平臺,調(diào)用不同的測試軟件,就可以構(gòu)成不同功能的儀器。本文對遠程虛擬儀器中的網(wǎng)絡通信、工作原理、實現(xiàn)方案等作了系統(tǒng)的探討和研究。

遠程虛擬儀器系統(tǒng)是近年來誕生并發(fā)展迅速的一種新型網(wǎng)絡測控技術,它不同于一般的信息網(wǎng)絡技術,其主要應用于遠方有傳感器或其他數(shù)據(jù)接收設備得到的數(shù)據(jù)的傳輸與通信。例如,醫(yī)療系統(tǒng)遠程會診、環(huán)境監(jiān)測與數(shù)據(jù)分析等等。本文對遠程虛擬儀器中的網(wǎng)絡通信、工作原理、實現(xiàn)方案等作了系統(tǒng)的探討和研究。

虛擬儀器與遠程虛擬儀器

隨著微電子技術、計算機技術、軟件技術和網(wǎng)絡技術的高度發(fā)展,在科研、工業(yè)和醫(yī)學領域,隨著低成本高性能的計算機資源的有效利用,數(shù)字化平臺逐漸成為測量儀器的基礎。儀器技術和計算機技術的深層次的結(jié)合創(chuàng)造了虛擬儀器的概念,將計算機(處理器、存儲器、顯示器等)和通用儀器硬件(A/D、D/A 變換器、數(shù)字輸入/輸出、定時和信號處理器等)與用于數(shù)據(jù)分析、過程通訊及用戶圖形界面的軟件有效地結(jié)合起來,就組成了虛擬儀器。

虛擬儀器技術的出現(xiàn)徹底打破了傳統(tǒng)儀器由廠家定義、用戶無法改變的模式,用戶借助通用的儀器硬件平臺,調(diào)用不同的測試軟件,就可以構(gòu)成不同功能的儀器。虛擬儀器能提供給用戶一個充分發(fā)揮自己才能和想象力的空間,用戶可以隨心所欲地設計和構(gòu)造自己的儀器系統(tǒng)以滿足多種多樣的測試需求,而所需的只是一些必要的硬件、軟件加上通用計算機。儀器的智能化和虛擬化已經(jīng)成為未來各級實驗室以及研究機構(gòu)發(fā)展的方向,“The Soft is Instruments(軟件就是儀器)”正在被廣大科技、教學工作者逐步接受。

繼“軟件就是儀器”的概念之后,出現(xiàn)了“網(wǎng)絡就是儀器”的新觀念。遠程虛擬儀器就是虛擬儀器在網(wǎng)絡領域的擴展。遠程虛擬儀器技術結(jié)合了虛擬儀器技術與網(wǎng)絡技術,將虛擬儀器的應用范圍拓展到整個Internet網(wǎng)上,使信號采集、傳輸和處理一體化,一方面可以使許多昂貴的硬件資源得以共享,充分利用現(xiàn)有的實驗室資源; 另一方面還有利于遠程教育實驗教學的開展,從而解決限制遠程教育中的實驗教學進行的難題。因此構(gòu)建基于Internet上的遠程虛擬儀器實驗系統(tǒng)已經(jīng)成為虛擬儀器應用發(fā)展的一個重要的環(huán)節(jié)。遠程虛擬儀器結(jié)構(gòu)模式如圖1所示。


圖1 遠程虛擬儀器的結(jié)構(gòu)模式

遠程虛擬儀器的實現(xiàn)

無論哪種遠程虛擬儀器系統(tǒng),都是將硬件儀器(傳感器、調(diào)理放大器、A/D卡)搭載到遠端服務器上,加上應用軟件并和本地的筆記本電腦、臺式 PC 機或工作站等各種計算機通過網(wǎng)絡相連而構(gòu)成的,實現(xiàn)了用計算機和網(wǎng)絡技術的全數(shù)字化的采集測試分析,因此遠程虛擬儀器的發(fā)展跟計算機和網(wǎng)絡技術的發(fā)展步伐完全同步,顯示出其靈活性和強大的生命力,Internet為實現(xiàn)遠程虛擬儀器系統(tǒng)提供了一個很好的平臺,利用瀏覽器/服務器模式,操控者可以在瀏覽器端控制遠程服務器進行測試以及進行遠程實驗的操作,從而實現(xiàn)對遠地實驗系統(tǒng)的遠程控制和監(jiān)控。

遠程虛擬儀器是虛擬儀器在網(wǎng)絡領域的拓展,除了具備虛擬儀器的全部優(yōu)點外,主要優(yōu)勢還在于不受地域、環(huán)境的限制。用網(wǎng)絡技術組建的遠程虛擬儀器系統(tǒng),可以使信號采集、傳輸和處理一體化,不但可以共享許多昂貴的硬件資源,而且還便于擴展測試系統(tǒng)、提高測試效率,所以應用極為廣泛,是科研、教育、開發(fā)、測量、檢測、計量、測控等領域不可多得的好工具,更值得一提的是它的出現(xiàn)對遠程醫(yī)療、遠程診斷等新興領域的發(fā)展有重要意義,也使現(xiàn)代遠程教育的全面開展成為可能,同時也會使教學實驗走上一個新的發(fā)展高度。

遠程虛擬儀器開發(fā)和實現(xiàn)方案

Internet 網(wǎng)絡技術和基于計算機技術的虛擬儀器(VI)系統(tǒng)技術正在推動著遠程測控技術的迅速發(fā)展?;?Internet 的遠程測控開發(fā)主要研究和討論基于Web的虛擬儀器技術,本文則基于最流行的現(xiàn)場測控開發(fā)平臺LabVIEW,討論了四種用于開發(fā)遠程虛擬儀器的技術實現(xiàn)過程及其工作原理,并對其實現(xiàn)特點進行了分析。

1. DataSocket 技術

LabVIEW 具有強大的網(wǎng)絡通信功能,這種功能使得 LabVIEW 的用戶可以很容易地編寫出具有強大網(wǎng)絡通信能力的 LabVIEW 應用軟件,實現(xiàn)遠程虛擬儀器。DataSocket 是 LabVIEW 最新提供的一個網(wǎng)絡測控系統(tǒng)開發(fā)工具,它大大簡化甚至免除了網(wǎng)絡通信編程,用戶使用這種技術可以很容易地在互聯(lián)網(wǎng)上實現(xiàn)高速實時數(shù)據(jù)交換。借助它可以在不同的應用程序和數(shù)據(jù)源之間共享數(shù)據(jù)并進行實時數(shù)據(jù)(Live data)的傳輸。圖2描述了 DataSocket 的體系結(jié)構(gòu)。

DataSocket 可以訪問本地文件以及 HTTP 和 FTP 服務器上的數(shù)據(jù),并為低層通信協(xié)議提供了統(tǒng)一的 API 函數(shù),編程人員無需為不同的數(shù)據(jù)格式和通信協(xié)議編寫具體的通信程序代碼。DataSocket 使用一種增強型數(shù)據(jù)類型來交換儀器類型的數(shù)據(jù),這種數(shù)據(jù)類型包括數(shù)據(jù)特性(如采樣率、操作員、通道數(shù)、時間、及采樣精度)和實際測試數(shù)據(jù)。

DataSocket 遵循了 TCP/IP 協(xié)議,并對底層進行了高度封裝,所提供的參數(shù)簡單友好,用類似與 Web 中的統(tǒng)一資源定位符(Uniform Resource Locator,URL)定位數(shù)據(jù)源,URL 不同的前綴代表了不同的數(shù)據(jù)類型。FILE 表示本地文件,HTTP 為超文本傳輸資源,F(xiàn)TP 為文件傳輸服務器上的資源,OPC表示訪問的資源是 OPC 服務器,DSTP(DataSocket Transfer Protocal,DataSocket 傳輸協(xié)議)則說明數(shù)據(jù)是來自 DataSocket 服務器的實時數(shù)據(jù)。

2. 基于 ActiveX 技術

組件式技術已經(jīng)成為當今軟件技術的潮流之一,組件式技術是一種廣泛的體系結(jié)構(gòu),支持包括設計、開發(fā)和部署在內(nèi)的整個生命周期計算的理念,它將徹底改變目前軟件生產(chǎn)和開發(fā)的模式。組件是一種能夠提供某種服務的自包含的軟件模塊,它封裝了一定的數(shù)據(jù)(屬性)和方法,并提供特定的接口,開發(fā)人員利用這一特定的接口來使用組件,并使其與其它組件交互通信,以此來構(gòu)造應用程序,用戶可根據(jù)自己的需求靈活購買軟件組件。他們只需編寫一些“膠水編碼”將各個組件“粘”起來,便可構(gòu)建自己的應用系統(tǒng),就如同今天我們購買板卡組裝計算機一樣簡單。

目前,基于組件式技術的規(guī)范主要有 Microsoft 的 COM/ActiveX 和 Sun的 Java/JavaBeans。由于 Microsoft 的 Windows 操作系統(tǒng)已經(jīng)成為桌面 PC 操作系統(tǒng)的事實上的標準,所以 COM/ActiveX 得到了許多第三方廠商的支持。利用 COM/ActiveX 技術,我們可創(chuàng)建各式各樣的桌面和 Internet 應用程序。ActiveX 控件技術是 COM/ActiveX 技術的重要組成部分,是 COM 技術在 Internet 上的擴展。ActiveX 是一種可以在應用程序和網(wǎng)絡十計算機上重復使用的程序?qū)ο蟆?chuàng)建它的主要技術是 Microsoft 的 COM/ActiveX 技術,組件對象模型(COM)是其基礎。ActiveX 控件可以以小程戶下載裝入網(wǎng)頁,也可以用在一般的 Windows 應用程序環(huán)境中。

ActiveX 控件可以由不同的可以識別 Microsoft 的 COM 技術的語言開發(fā),它是一個組件,它可以在同一個或分布式的計算環(huán)境中開發(fā)或使用。COM 的分布式支持技術稱為 DCOM。在實現(xiàn)中,ActiveX 控件是一個動態(tài)鏈接庫(DLL)模塊,它包括在容器(包括 COM 程序接口的應用程序)當中,這種可重復使用的組件技術可以加快開發(fā)速度和質(zhì)量。

通常情況下,基于以下三點可以考慮采用 ActiveX 控件實現(xiàn)遠程測控功能:

● 瀏覽器對組件技術,尤其是ActiveX 的廣泛支持;

● ActiveX 控件在客戶端的執(zhí)行效率要高于 JavaApplet;

● 易于開發(fā),Delphi 開發(fā)的程序可以直接以 ActiveX 控件形式進行網(wǎng)絡開發(fā)。

在遠程測控系統(tǒng)開發(fā)中,我們可以用 Borland Delphi 開發(fā)平臺對遠程測控客戶端軟件進行重新開發(fā),并以 ActiveX 控件的形式進行封裝。當客戶端在訪問服務器網(wǎng)頁時,會自動下載和運行該 ActiveX 控件程序,從而實現(xiàn)了類似Java Applet 程序所實現(xiàn)的功能。

3. 基于 Java Applet 技術

(1)Java Applet 技術的特點

首先,Applet 程序是從服務器端自動下載到客戶端執(zhí)行,并且是嵌入到瀏覽器中運行。對用戶而言,這與一般的上網(wǎng)瀏覽沒有任何區(qū)別,Applet 只能在瀏覽器環(huán)境內(nèi)運行,只需所用的瀏覽器支持 Java 即可,而當前幾乎所有的瀏覽器均支持 Java 并擁有 Java 虛擬機,無須下載插件。而且,Java 方便的語言操作能力,無論在界面操作還是程序設計上,均給開發(fā)人員帶來極大的便利。

其次,Java 語言具有強大而完善的網(wǎng)絡開發(fā)功能。在 Applet 程序中,很容易就可以實現(xiàn)泛普軟件程服務器之間建立連接并控制數(shù)據(jù)傳遞。當客戶端打開服務器網(wǎng)頁時,會自動下載和啟動 Applet 程序,這樣,客戶端只需簡單操作 Applet程序即可控制遠端系統(tǒng)工作和結(jié)果數(shù)據(jù)傳輸。

第三,由于 Java 本身是一種優(yōu)秀的跨平臺語言,這使得無論在 Windows操作系統(tǒng)還是 Unix 系統(tǒng)抑或是 Linux 系統(tǒng)下,針對客戶端開發(fā)的 Applet 程序都無須修改而做到完全移植。這一特點很大程度地擴展了遠程測控系統(tǒng)的應用范圍。

(2)Java Applet的工作原理及通信過程

應用本方案實現(xiàn)的遠程測控系統(tǒng)的基本結(jié)構(gòu)示意圖如圖3所示??蛻舳擞蓛蓚€部分組成,一個是網(wǎng)絡瀏覽器,另一部分則是嵌入到瀏覽器頁面中運行的 Java Applet 程序,客戶端通過 Internet 和支持 Java Applet 的瀏覽器來訪問服務器,自動下載并運行 Applet。服務器端由 Web 服務器、LabVIEW 程序和DataServer 三部分組成。Web 服務器為客戶端提供 WWW 服務,使得客戶端能夠通過瀏覽器訪問服務器。LabVIEW 程序負責服務器端的現(xiàn)場測控。而 Data Server 一方面同客戶端 JavaApplet 程序建立網(wǎng)絡連接,作為 Applet 程序的數(shù)據(jù)服務器,按受客戶端 Applet 程序的請求并傳送數(shù)據(jù); 另一方面又負責響應Applet 程序的請求,以客戶方式對 LabVIEW 程序進行相應的控制。

具體過程如下:

①客戶端 Web 瀏覽器請求服務器端的網(wǎng)頁,JavaApplet 自動下載到客戶端并啟動運行。建立客戶端于服務器端 Data Server 的網(wǎng)絡連接。

②Applet 向 Data Server 發(fā)送數(shù)據(jù)請求,實現(xiàn)數(shù)據(jù)接收和顯示。

③Applet 程序獲取鼠標和鍵盤事件,并發(fā)送到服務器端的 Data Server,Data Server 對 LabVIEW 程序進行相應的控制,從而間接實現(xiàn)遠程控制。

4. AppletVIEW 技術

AppletVIEW 是 Nacimiento Software Corporation 的產(chǎn)品,它能夠把由LabVIEW 以及 LabWindow/CVI 生成的虛擬儀器發(fā)布到 Web 上。

(1) AppletVIEW 技術的特點

客戶端程序采用 AppletVIEW 開發(fā)實現(xiàn),AppletVIEW 是一個為 LabVIEW開發(fā) Web 應用程序的軟件,可以實現(xiàn) B/S 模式虛擬儀器。它為服務器端提供了網(wǎng)絡開發(fā)的 G 語言支持,從而在服務器端,可以在 LabVIEW 平臺上結(jié)合AppletVIEW 的代理功能更好的解決網(wǎng)絡多用戶問題。而且,數(shù)據(jù)的傳輸是基于 Socket 的一種傳輸方式,具有較高的數(shù)據(jù)吞吐量。針對客戶端程序開發(fā),AppletVIEW 提供了一個友好的可視化開發(fā)環(huán)境和—些測控常用的組件,這個環(huán)境也加快了客戶端程序的設計開發(fā)。

(2) AppletVIEW 的工作原理及通信過程

AppleWIEW 開發(fā)包的一部分是 VITP 服務器,它負責處理本地儀器和遠端儀器的經(jīng)由 Web 的通信。在服務器端的儀器系統(tǒng)里,它作為 LabVIEW 程序運行,提供了一個在 AppletVIEW 子儀器和遠端儀器之間的接口界面。此服務器管理經(jīng)過 AppletVIEW 子儀器的來自以及送入虛擬儀器的數(shù)據(jù),并且通過JavaApplet ID 以及一組數(shù)據(jù)管道在本地儀器和遠端儀器間進行通信。在遠端可以監(jiān)控本地儀器的運行狀態(tài),具體通信過程如圖4所示,過程描述如下:

1-2: Web 瀏覽器從 Web 服務器請求 HTML 頁面,Web 服務器發(fā)送此頁面到 Web 瀏覽器。

3-4: 在瀏覽器端,帶有< Applet>標示的 HTML 頁面說明有 Java 程序被調(diào)用,Web 瀏覽器的 Java 虛擬機運行并從 Web 服務器請求 Applet 類文件。需要的 Java 類文件在 AppletVIEW.jar 中。

5: 服務器發(fā)送 AppletVIEW.jar 到 Web 瀏覽器。

6-7: AppletVIEW.jar 加載后,程序開始運行,請求“configureFile”中的參數(shù)。

8: Appletbuilder 生成的 MyApplet.jvi 被送到 Web 瀏覽器的程序中。

9: Java 程序與服務器通過數(shù)據(jù)端口(默認 4749)建立 TCP/IP 連接,通信過程建立。

鏈接:四種實現(xiàn)方案比較

基于DataSocket技術的遠程測控方案,優(yōu)點是DataSocket定義了一個測控數(shù)據(jù)傳輸協(xié)議,從而利用這種方法可以達到很高的數(shù)據(jù)傳輸效率,實時性能相當好。缺點是它只能實現(xiàn)C/S模式而不能實現(xiàn)B/S模式,需要同時開發(fā)服務器端程序和客戶端程序,客戶端控制功能太弱,尚有待加強。

基于ActiveX實現(xiàn)方案,在實現(xiàn)上采用 Delphi開發(fā),它的優(yōu)點是開發(fā)效率高,而且一旦程序下載成功,比起同樣功能的Java 程序具有更高的執(zhí)行速度和效率,占用的系統(tǒng)資源也相對比較少; 但是,實驗證明,它生成的ActiveX控件程序的尺寸比 Java 程序要大許多,客戶端需要花費大量的時間來下載這個程序。

基于Java Applet技術的優(yōu)點是可以實現(xiàn)B/S模式,只需開發(fā)服務器端程序,開發(fā)效率高,客戶端無須下載插件,程序較小便于下載執(zhí)行; 缺點是圖像質(zhì)量差,動態(tài)顯示有跳動感不連續(xù)。

基于AppletVIEW組件技術實現(xiàn)的遠程測控方案,可以實現(xiàn)B/S模式,AppletVIEW 是第三方開發(fā)的遠程測控專用組件,為遠程測控系統(tǒng)提供了可視化開發(fā)環(huán)境,能把LabVIEW儀器面板自動生成Java儀器面板,所以具有很高的開發(fā)效率。而且,數(shù)據(jù)的傳輸是基于Socket的一種傳輸方式,具有較高的數(shù)據(jù)吞吐量,缺點是需要修改本地測控程序,并在本地VI程序中調(diào)用AppletVIEW提供的一些網(wǎng)絡控件VI,來與瀏覽器端的Java程序通信,從而實現(xiàn)網(wǎng)絡測控。

遠程虛擬儀器是虛擬儀器在網(wǎng)絡領域的拓展,它的許多優(yōu)點使其應用極為廣泛,是科研、教育、開發(fā)、測量、檢測、計量、測控等領域不可多得的好工具。網(wǎng)絡通信技術和虛擬儀器技術相結(jié)合是本文的討論重點,文中對遠程虛擬儀器的網(wǎng)絡結(jié)構(gòu)及構(gòu)成、開發(fā)方案及工作原理都作了較為系統(tǒng)的研究。最后再給出幾點經(jīng)驗和建議:

(1) 如果是實驗室或小范圍的遠程測控,可采用C/S模式,客戶端實現(xiàn)與服務器直接相連,沒有中間環(huán)節(jié),因此響應速度快。如果是遠距離、大范圍的遠程測控工作,可采用B/S模式,具有分布性特點,可以隨時隨地進行操作,而且升級維護方便。

(2) DataSocket定義了一個測控數(shù)據(jù)傳輸協(xié)議,數(shù)據(jù)傳輸效率高,實時性能好,但只能實現(xiàn)C/S模式。而基于ActiveX 技術開發(fā)效率高,具有更高的執(zhí)行速度和效率,但生成的ActiveX控件的尺寸較大,客戶端需要花費大量的時間來下載這個程序。采用Java Applet技術可以實現(xiàn)B/S模式,開發(fā)效率高,實驗證明圖像質(zhì)量差,動態(tài)顯示有跳動感不連續(xù)?;贏ppletVIEW組件技術可以實現(xiàn)B/S模式,開發(fā)效率高,數(shù)據(jù)的傳輸是基于Socket的一種傳輸方式,具有較高的數(shù)據(jù)吞吐量,試驗結(jié)果表明,系統(tǒng)穩(wěn)定可靠,實時性好。

(3) 服務器端IIS中的Web服務器使用的是8080端口,和LabVIEW中的Web服務器沖突,應修改端口號或關閉IIS中的 Web 服務器,這樣才能使AppletVIEW通過8080端口和LabVIEW通信。

網(wǎng)絡技術和虛擬儀器的結(jié)合,使 VI 拓展到真正的分布式網(wǎng)絡測試應用環(huán)境中去,對于豐富測試手段,提高測試效率,共享信息,充分合理地利用現(xiàn)有資源都有著很好的作用,將成為現(xiàn)代儀器儀表發(fā)展的方向。(ccw)

發(fā)布:2007-04-23 09:34    編輯:泛普軟件 · xiaona    [打印此頁]    [關閉]
相關文章:
石家莊OA系統(tǒng)
聯(lián)系方式

成都公司:成都市成華區(qū)建設南路160號1層9號

重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務大廈18樓

咨詢:400-8352-114

加微信,免費獲取試用系統(tǒng)

QQ在線咨詢

泛普石家莊OA快博其他應用

石家莊OA軟件 石家莊OA新聞動態(tài) 石家莊OA信息化 石家莊OA快博 石家莊OA行業(yè)資訊 石家莊軟件開發(fā)公司 石家莊門禁系統(tǒng) 石家莊物業(yè)管理軟件 石家莊倉庫管理軟件 石家莊餐飲管理軟件 石家莊網(wǎng)站建設公司