1 虛擬儀器簡介
美國NI(National Instruments)公司在20世紀80年代中期提出了虛擬儀器的概念。到目前為止,NI公司已研制和推出了多種總線式系統的虛擬儀器,美國的HP公司、Racal公司等也相繼推出了多種總線系統的虛擬儀器。虛擬儀器是目前發達國家研究的熱點之一。
虛擬儀器就是利用PC計算機強大的圖形環境和在線幫助功能,建立中英文界面的虛擬儀器面板,完成對儀器的控制、數據分析與顯示,代替了傳統儀器并改變傳統儀器的使用方式,用戶可以根據自己的需要定義儀器的功能[1],提高儀器的使用功能和效率,大幅度降低儀器的價格。
虛擬儀器除具有普通儀器的功能外,還可以完成傳統儀器不可能實現的測試功能。它的最大特點就是把由儀器生產廠家定義儀器功能的方式轉變為由用戶自己定義儀器功能,用戶可根據自己定義的測試功能的需要,設計所需要的儀器系統,滿足多種應用需求。虛擬儀器沒有常規儀器的控制面板,而是利用計算機強大的圖形環境,在計算機屏幕上建立圖形化的軟面板來替代常規的儀器控制面板。軟面板上具有與實際儀器相擬的旋鈕、開關、指示燈及其他控制部件,用戶通過鼠標或鍵盤操作來檢驗儀器的通信和操作。由于虛擬儀器的測試功能、面板控件都實現了軟件化,任何一個使用者都可能通過修改虛擬儀器的軟件來改變它的功能和規模,這充分體現了“軟件就是儀器”的新思路。
2 虛擬儀器的軟件設計
軟件的研制是虛擬儀器的關鍵,一個高效的開發平臺有利于構建強大的虛擬儀器系統,其代表產品是美國NI公司的Lab View和Lab Windows。Lab View面向的是沒有編程經驗的用戶,尤其適合從事科研、開發的科學家、工程技術人員。有C語言編程經驗的用戶則可以使用NI的另一種虛擬儀器開發平臺Lab Windows/CVI來簡化程序開發,提高編程速度。本文虛擬儀器的軟件開發采用了NI公司最新版本的Lab Windows/CVI 5.0。
2.1 Lab Windows/CVI簡介
Lab Windows/CVI是美國NI公司專門用于虛擬儀器的基于ANSIC、交互式C語言的開發平臺。它提供了豐富的儀器儀表的界面和控件,并帶有數值分析、數字信號處理、GPIB、VXI、VISA、TCP等庫函數,同標準C/C++兼容。Lab Windows/CVI是一種開放的開發環境,以工程文件為主體框架將C原代碼文件、庫文件、目標模塊、用戶界面文件、動態連接庫、儀器驅動器等多種功能組合集于一體,可編譯性能強;可以在Win3.X/Win95/WinNT/Unix和并行Power MAX中應用,具有交叉平臺兼容性。
2.2 軟件設計
Lab Windows/CVI是一種可視化編程技術,通過彈出式菜單定義用戶界面,并將它存儲在后綴名為.UIR的文件中,由用戶界面編輯器對其進行編輯、保存,Lab Windows/CVI將自動生成源代碼文件,聲明界面對象常量及相關回調函數。
利用Lab Windows/CVI提供的代碼生成器和函數面板這兩種交互式編程工具,可自動生成各種結構命令框架,極大減少源碼語句的輸入量,減少程序的語法錯誤,提高應用軟件設計的效率和可靠性。功能強大的函數庫的調用大大提高了對數據的分析和處理能力。如HPVEE可提供200種以上的數學運算和分析功能,從最基本的數學運算到微積分及回歸分析等。以圖形或對象方式調用各種功能各異、使用方便的庫函數,既能完成對數據的分析處理,又節省了大量的開發時間和費用。
使用Lab Windows/CVI開發Windows3.X—95/NT平臺下的應用程序,凡涉及復雜的Windows的編程細節,Lab Windows/CVI會自行處理好,而無需使用者再去鉆研這些技術。
3 監測水質的虛擬儀器系統
3.1 軟面板設計
軟面板的設計分為兩個步驟:使用界面編輯器產生一個圖形面板;編寫程序代碼對圖形面板進行處理。
圖1是利用Lab Windows/CVI 5.0開發的一個水質物理指標監測的軟面板設計實例。此虛擬儀器可以同時或分別對水溫、pH值、電導率、濁度等進行監測。面板中間具有4個數值顯示窗口和4個圖形顯示窗口,分別顯示數據。設計兩種讀取方式:用鼠標讀取;在顯示屏上放一個游標,利用鍵盤控制。
存儲數據命令按鈕與顯示屏相對應,按下它就表示要把顯示屏上的數據存儲起來。存儲方式有兩種:存儲在文件里或通過打印機打印。存儲數據可以多種方式顯示:如柱型圖,三維立體圖,直方圖等。
通過數據分析庫(按鈕)能夠對所測數據進行統計、回歸、分析(調用函數等),使用幫助菜單(按鈕)將熟悉和了解儀器的功能、操作等,按下“退出”按鈕后將關閉虛擬儀器。
3.2 硬件結構
虛擬儀器的硬件平臺主要包括用于數據采集、信號分析處理和信號輸出顯示等硬件。由于從傳感器直接得到的信號很微弱,因此選用了美國Burr Brown公司專門用于數據采集、具有高精度及強抗干擾能力的精密隔離儀表放大器ISO165作為信號處理單元的主放大器。數據采集系統采用美國Iotech WaveBook/512 Data Acquisition System,其主要性能指標:采樣頻率為IMHz,通道數為8,A/D精度為±0.025%,抗混濾波器,FIFO緩沖器64 k。
3.3 應用實例
圖1和圖2是自行研制開發的水質物理指標和化學離子檢測指標測定的虛擬儀器前面板,面板中間的4個數值顯示窗口和4個圖形顯示窗口可以同時對水溫、pH值、電導率、濁度和氟離子、氯離子、氰離子、溶解氧等濃度進行監測。
系統設置了采樣點數、采樣頻率等,通過通道選擇,可以以一個大的顯示窗口分別顯示水溫、pH值、電導率、濁度以及氟離子、氯離子、氰離子、溶解氧濃度等由外設端口或從數據文件中讀出的原始信號數據。
4 在水工業中的發展前景
虛擬儀器以計算機技術為核心,將計算機和測試系統有機地融合為一體,它的最大優點在于用戶自定義儀器的功能和結構等。虛擬儀器將眾多的測試儀器功能、技術參數和精度指標集成在一個軟件庫中,通過與專用的硬件卡和接口搭配,完成眾多復雜儀器的功能,使得測試系統開發周期縮短、費用降低,同時使得測試系統體積小、靈活方便,提高了測量精度及測量速度,它已成為現代測試系統發展的主流。
參考文獻:
[1]樂德廣,郭東輝,劉瑞堂.虛擬儀器結構及其可視化編程的技術進展[J].計算機自動測量與控制,2001,9(1):1-3.