虛擬儀器系統(tǒng)的設(shè)計(jì)方案
掃描二維碼
隨時(shí)隨地手機(jī)看文章
虛擬儀器是全新概念的儀器,它是對(duì)傳統(tǒng)儀器概念的重大突破,它的出現(xiàn)開始了儀器發(fā)展的全新時(shí)代,是儀器領(lǐng)域的一場(chǎng)革命。設(shè)計(jì)功能強(qiáng)大、高效、集成完美,應(yīng)用于測(cè)試和測(cè)控領(lǐng)域的虛擬儀器系統(tǒng)是信息時(shí)代的需求。
1 虛擬儀器系統(tǒng)的構(gòu)成
虛擬儀器由硬件設(shè)備與接口、設(shè)備驅(qū)動(dòng)軟件和虛擬儀器面板組成。其中,硬件設(shè)備與接口可以是各種以PC為基礎(chǔ)的內(nèi)置功能插卡、通用接口總線接口卡、串行口、VXI總線儀器接口等設(shè)備,或者是其它各種可程控的外置測(cè)試設(shè)備,設(shè)備驅(qū)動(dòng)軟件是直接控制各種硬件接口的驅(qū)動(dòng)程序,虛擬儀器通過底層設(shè)備驅(qū)動(dòng)軟件與真實(shí)的儀器系統(tǒng)進(jìn)行通訊,并以虛擬儀器面板的形式在計(jì)算機(jī)屏幕上顯示與真實(shí)儀器面板操作元素相對(duì)應(yīng)的各種控件。用戶用鼠標(biāo)操作虛擬儀器的面板就如同操作真實(shí)儀器一樣真實(shí)與方便。
1.1 虛擬儀器系統(tǒng)的硬件構(gòu)成
虛擬儀器的硬件系統(tǒng)一般分為計(jì)算機(jī)硬件平臺(tái)和測(cè)控功能硬件。計(jì)算機(jī)硬件平臺(tái)可以是各種類型的計(jì)算機(jī),如臺(tái)式計(jì)算機(jī)、便攜式計(jì)算機(jī)、工作站、嵌入式計(jì)算機(jī)等。它管理著虛擬儀器的軟件資源,是虛擬儀器的硬件基礎(chǔ)。因此,計(jì)算機(jī)技術(shù)在顯示、存儲(chǔ)能力、處理器性能、網(wǎng)絡(luò)、總線標(biāo)準(zhǔn)等方面的發(fā)展,導(dǎo)致了虛擬儀器系統(tǒng)的快速發(fā)展。
按照測(cè)控功能硬件的不同,VI可分為DAQ、GPIB、VXI、PXI和串口總線五種標(biāo)準(zhǔn)體系結(jié)構(gòu),它們主要完成被測(cè)輸入信號(hào)的采集、放大、模/數(shù)轉(zhuǎn)換。
1.2 虛擬儀器系統(tǒng)的軟件構(gòu)成
測(cè)試軟件是虛擬儀器的主心骨。NI公司在提出虛擬儀器概念并推出第一批實(shí)用成果時(shí),就用軟件就是儀器來表達(dá)虛擬儀器的特征,強(qiáng)調(diào)軟件在虛擬儀器中的重要位置。NI公司從一開始就推出豐富而又簡(jiǎn)潔的虛擬儀器開發(fā)軟件。使用者可以根據(jù)不同的測(cè)試任務(wù),在虛擬儀器開發(fā)軟件的提示下編制不同的測(cè)試軟件,來實(shí)現(xiàn)當(dāng)代科學(xué)技術(shù)復(fù)雜的測(cè)試任務(wù)。在虛擬儀器系統(tǒng)中用靈活強(qiáng)大的計(jì)算機(jī)軟件代替?zhèn)鹘y(tǒng)儀器的某些硬件,特別是系統(tǒng)中應(yīng)用計(jì)算機(jī)直接參與測(cè)試信號(hào)的產(chǎn)生和測(cè)量特性的分析,使儀器中的一些硬件甚至整個(gè)儀器從系統(tǒng)中消失,而由計(jì)算機(jī)的軟硬件資源來完成它們的功能。虛擬儀器測(cè)試系統(tǒng)的軟件主要分為以下四部分。
1.2.1儀器面板控制軟件
儀器面板控制軟件即測(cè)試管理層,是用戶與儀器之間交流信息的紐帶。利用計(jì)算機(jī)強(qiáng)大的圖形化編程環(huán)境,使用可視化的技術(shù),從控制模塊上選擇你所需要的對(duì)象,放在虛擬儀器的前面板上。
1.2.2 數(shù)據(jù)分析處理軟件
利用計(jì)算機(jī)強(qiáng)大的計(jì)算能力和虛擬儀器開發(fā)軟件功能強(qiáng)大的函數(shù)庫可以極大提高虛擬儀器系統(tǒng)的數(shù)據(jù)分析處理能力,節(jié)省開發(fā)時(shí)間。
1.2.3 儀器驅(qū)動(dòng)軟件
虛擬儀器驅(qū)動(dòng)程序是處理與特定儀器進(jìn)行控制通信的一種軟件。儀器驅(qū)動(dòng)器與通信接口及使用開發(fā)環(huán)境相聯(lián)系,它提供一種高級(jí)的、抽象的儀器映像,它還能提供特定的使用開發(fā)環(huán)境信息。儀器驅(qū)動(dòng)器是虛擬儀器的核心,是用戶完成對(duì)儀器硬件控制的紐帶和橋梁。虛擬儀器驅(qū)動(dòng)程序的核心是驅(qū)動(dòng)程序函數(shù)/VI集,函數(shù)/VI是指組成驅(qū)動(dòng)的模塊化子程序。驅(qū)動(dòng)程序一般分為兩層,底層是儀器的基本操作,如初始化儀器配置儀器輸入?yún)?shù)、收發(fā)數(shù)據(jù)、查看儀器狀態(tài)等。高層是應(yīng)用函數(shù)/VI層,它根據(jù)具體測(cè)量要求調(diào)用底層的函數(shù)/VI。
1.2.4 通用I/O接口軟件
在虛擬儀器系統(tǒng)中,I/O接口軟件作為虛擬儀器系統(tǒng)軟件結(jié)構(gòu)中承上啟下的一層,其模塊化與標(biāo)準(zhǔn)化越來越重要。VXI總線即插即用聯(lián)盟,為其制定了標(biāo)準(zhǔn),提出了自底向上的I/O接口軟件模型即VISA。作為通用I/O標(biāo)準(zhǔn),VISA具有與儀器硬件接口無關(guān)性的特點(diǎn), 即這種軟件結(jié)構(gòu)是面向器件功能而不是面向接口總線的。應(yīng)用工程師為帶GPIB接口儀器所寫的軟件,也可以于VXI系統(tǒng)或具有RS232接口的設(shè)備上,這樣不但大大縮短了應(yīng)用程序的開發(fā)周期,而且徹底改變了測(cè)試軟件開發(fā)的方式和手段。
2 虛擬儀器系統(tǒng)軟面板的設(shè)計(jì)標(biāo)準(zhǔn)
虛擬儀器軟面板是用戶用來操作儀器,與儀器進(jìn)行通信,輸入?yún)?shù)設(shè)置,輸出結(jié)果顯示的用戶接口。其設(shè)計(jì)準(zhǔn)則是:
?。?) 按照VPP規(guī)范設(shè)計(jì)軟面板,使面板具有標(biāo)準(zhǔn)化、開放性、可移植性。
?。?) 根據(jù)測(cè)試要求確定儀器功能。根據(jù)測(cè)試任務(wù)確定儀器軟面板具體測(cè)試、測(cè)量功能,開關(guān)、控制等設(shè)置要求。
?。?) 用面向?qū)ο蟮脑O(shè)計(jì)方法設(shè)計(jì)軟面板。按照面向?qū)ο蟮脑O(shè)計(jì)思想,一個(gè)虛擬儀器集成系統(tǒng)由多個(gè)虛擬儀器組成,每個(gè)虛擬儀器均由軟面板控制。軟面板由大量的虛擬控件組成。
3 虛擬儀器系統(tǒng)的組建方案
在虛擬儀器系統(tǒng)的組建方案,主要包括底層硬件、軟硬件接口、應(yīng)用程序以及驅(qū)動(dòng)程序的設(shè)計(jì)與開發(fā)。
3.1 制定所設(shè)計(jì)儀器的接口形式
如果儀器設(shè)備具有RS-232串行接口,則直接用連線將儀器設(shè)備和計(jì)算機(jī)的RS-232串行口連接即可。如果是GPIB接口,需要額外配備一塊GPIB-488接口板,將接口板插入計(jì)算機(jī)的ISA插槽,建立起計(jì)算機(jī)與儀器設(shè)備之間的通信橋梁。如果使用計(jì)算機(jī)來控制VXI總線設(shè)備,則需要配置一塊GPIB接口卡,通過GPIB 總線與VXI主機(jī)箱零槽模塊通信。零槽模塊的GPIB-VXI翻譯器將GPIB 的命令翻譯成VXI命令并把各模塊返回的數(shù)據(jù)以一定的格式傳回主控計(jì)算機(jī)。DAQ數(shù)據(jù)采集卡是基于計(jì)算機(jī)標(biāo)準(zhǔn)總線的,因此可以將數(shù)據(jù)采集卡直接插到計(jì)算機(jī)的插槽上。
3.2 開發(fā)硬件采集卡
一種典型的數(shù)據(jù)采集卡組成包括,先用傳感器把非電的物理量轉(zhuǎn)變成模擬電量,采樣/保持器可以保持信號(hào),實(shí)現(xiàn)對(duì)瞬時(shí)信號(hào)進(jìn)行采集,以便ADC進(jìn)行數(shù)字轉(zhuǎn)換,提高ADC轉(zhuǎn)換器的轉(zhuǎn)換精度。實(shí)現(xiàn)在測(cè)量中同時(shí)對(duì)多路模擬信號(hào)進(jìn)行采樣。多路模擬開關(guān)可以分時(shí)選通來自多個(gè)輸入通道的某一路信號(hào),這樣在多路開關(guān)后的單元電路,只需一套即可,也可以采用計(jì)算機(jī)進(jìn)行多路選擇控制。當(dāng)傳感器輸出的信號(hào)比較小,可以用放大器放大和緩沖輸入信號(hào),如果采用的是可編程增益放大器就可以通過計(jì)算機(jī)進(jìn)行增益選擇控制確定增益倍數(shù)。精度及性能是儀器系統(tǒng)的生命,而這完全依賴于提供基礎(chǔ)數(shù)據(jù)的信號(hào)采集控制電路,因此在硬件采集電路的設(shè)計(jì)時(shí),需根據(jù)所設(shè)計(jì)的虛擬儀器所要達(dá)到的性能指標(biāo)和被測(cè)信號(hào)的特點(diǎn),設(shè)計(jì)合理的系統(tǒng)結(jié)構(gòu)。系統(tǒng)的結(jié)構(gòu)合理與否,對(duì)系統(tǒng)的可靠性、性能價(jià)格比等有直接影響,在硬件和軟件功能的設(shè)計(jì)上要盡量使虛擬儀器的結(jié)構(gòu)簡(jiǎn)單,可靠性高,成本低廉,選用合適的單元器件,盡可能的提高采集卡采集的精度和速度。
3.3 確定設(shè)計(jì)采集卡的設(shè)備驅(qū)動(dòng)程序方案
采集卡的設(shè)備驅(qū)動(dòng)程序是控制各種硬件采集卡的驅(qū)動(dòng)程序,是連接主控計(jì)算機(jī)與信號(hào)采集調(diào)理部件的紐帶。驅(qū)動(dòng)程序的實(shí)質(zhì)是為用戶提供了用于儀器操作的較抽象的操作函數(shù)集,它是虛擬儀器核心軟件之一。
3.4 確定虛擬儀器系統(tǒng)應(yīng)用程序編程語言
虛擬儀器系統(tǒng)軟件結(jié)構(gòu)的設(shè)計(jì)在體現(xiàn)整個(gè)系統(tǒng)的性能和靈活性方面作用很大,因此在開發(fā)虛擬儀器系統(tǒng)的軟件部分時(shí),首先要根據(jù)所開發(fā)的虛擬儀器功能和性能,確定應(yīng)用程序和軟面板程序的模塊結(jié)構(gòu)和功能,畫出各部分的流程圖,采用合適的編程語言。在編制虛擬儀器軟件中可采用兩種編程方法。一種是采用面向?qū)ο蟮目梢暬母呒?jí)編程語言,如VC++、VB和Delphi等編寫虛擬儀器的軟件,這種方法實(shí)現(xiàn)的系統(tǒng)靈活性高,易于擴(kuò)充和升級(jí)維護(hù)。另一種是采用圖形化編程方法,如LabVIEW,HPVEE,采用圖形化編程的優(yōu)勢(shì)是軟件開發(fā)周期短、編程較簡(jiǎn)單,特別適合工程技術(shù)人員使用。總之在編寫程序時(shí),要盡可能的讓每一模塊都有一定的獨(dú)立性,模塊之間明確定義接口,模塊之間可以采用數(shù)據(jù)傳遞的形式進(jìn)行聯(lián)系。
3.5 軟件調(diào)試和運(yùn)行
程序編寫好以后要對(duì)各模塊進(jìn)行調(diào)試和運(yùn)行,可以通過采集各種標(biāo)準(zhǔn)信號(hào)來驗(yàn)證虛擬儀器系統(tǒng)功能的正確性和性能的優(yōu)良性。
4 結(jié)束語
本文研究了虛擬儀器系統(tǒng)的設(shè)計(jì)方案,主要包括了虛擬儀器系統(tǒng)的構(gòu)成,虛擬儀器系統(tǒng)軟面板的設(shè)計(jì)標(biāo)準(zhǔn)、以及虛擬儀器系統(tǒng)的組建方案,用虛擬儀器技術(shù)組建的系統(tǒng),更加靈活、更緊湊、更經(jīng)濟(jì)、功能更強(qiáng)大。無論是測(cè)量、測(cè)試、計(jì)量或是工業(yè)過程控制和分析處理,還是其它更為廣泛的測(cè)控領(lǐng)域,設(shè)計(jì)虛擬儀器系統(tǒng)都是理想的、高效率的解決方案。