虛擬儀器概念
如果總結(jié)哪一項(xiàng)技術(shù)在過(guò)去50年中,,對(duì)人類(lèi)生活的影響最大,,那肯定是計(jì)算機(jī)技術(shù)。計(jì)算機(jī)歷經(jīng)50年的發(fā)展,,現(xiàn)在已經(jīng)滲透到了日常生活的方方面面,。似乎生活中的任何一件物品,不與計(jì)算機(jī)相結(jié)合,,就無(wú)法再創(chuàng)新;而一旦與計(jì)算機(jī)結(jié)合在一起,,則會(huì)立刻迸發(fā)出令人瞠目的活力。
傳統(tǒng)設(shè)備與計(jì)算機(jī)的結(jié)合通常有兩個(gè)方向,,一是以計(jì)算機(jī)為主體,,在計(jì)算機(jī)上添加某些必要硬件設(shè)備,完成傳統(tǒng)設(shè)備的功能;二是以傳統(tǒng)設(shè)備為基礎(chǔ),,在其上添加計(jì)算機(jī)軟硬件,。以電話為例,,它的發(fā)展方向:一是為計(jì)算機(jī)配備耳機(jī)、麥克風(fēng),、攝像頭等硬件,,然后直接通過(guò)計(jì)算機(jī)進(jìn)行語(yǔ)音、視頻通訊;其二,,是把外形和功能都縮減后的計(jì)算機(jī)直接安裝到電話上,并在安裝上相應(yīng)的系統(tǒng)和應(yīng)用軟件,,成為智能手機(jī),。
不論采用哪種融合方式,傳統(tǒng)設(shè)備的功能都被革命性的增強(qiáng)了,,而其成本卻不斷降低,。比如說(shuō),在計(jì)算機(jī)上,,可以把電話的單純語(yǔ)音通話功能擴(kuò)展為語(yǔ)音視頻交流,,而起每次通訊的邊際成本幾乎為零;時(shí)下流行的各種手機(jī),在嵌入計(jì)算機(jī)設(shè)備后,,除了用于通話,,更可以用來(lái)娛樂(lè)甚至辦公。這些都是傳統(tǒng)電話所不能比擬的,。
在測(cè)試測(cè)量領(lǐng)域,,測(cè)試儀器經(jīng)歷了與電話及其類(lèi)似的發(fā)展過(guò)程。它們或者被植入CPU,、內(nèi)存,、安裝上軟件,具備了計(jì)算機(jī)的基本功能;或者被拆解開(kāi)來(lái),,取其核心部件插入到計(jì)算機(jī)中去,,使計(jì)算機(jī)具備測(cè)試功能。這兩種發(fā)展方向都使得儀器的功能更強(qiáng)大,,速度更快,。但其區(qū)別之處在于,把儀器移植到計(jì)算機(jī)上,,更多考慮的是降低成本;而把計(jì)算機(jī)移植到儀器上,,則更多的是為了滿足儀器小型化的需要。
在計(jì)算機(jī)運(yùn)算能力強(qiáng)大到一定程度之后,,以“虛擬"為前綴的各項(xiàng)技術(shù)開(kāi)始紛紛出現(xiàn),,比如虛擬現(xiàn)實(shí)、虛擬機(jī),、虛擬儀器等,。虛擬現(xiàn)實(shí)是指用計(jì)算機(jī)表現(xiàn)真實(shí)世界;虛擬機(jī)是指在一臺(tái)計(jì)算機(jī)上模擬多臺(tái)計(jì)算機(jī);同樣虛擬儀器是指在計(jì)算機(jī)上完成儀器的功能,。
虛擬儀器的概念是相對(duì)于傳統(tǒng)儀器來(lái)說(shuō)的。記得以前上學(xué)做物理實(shí)驗(yàn)時(shí),,常常用到萬(wàn)用表,、示波器等儀器,它們每臺(tái)儀器就是一個(gè)固定的方盒子,,它們所有的測(cè)量功能都在這個(gè)盒子內(nèi)完成,,這就是所謂的傳統(tǒng)儀器。而進(jìn)入到虛擬儀器時(shí)代,,這種單一功能的方盒子開(kāi)始逐漸被電腦所取代,。
傳統(tǒng)儀器的方盒子,用戶看不到其內(nèi)部,,更無(wú)法改變其結(jié)構(gòu),。因此,一臺(tái)傳統(tǒng)儀器一旦離開(kāi)它生產(chǎn)線后,,其功能和外觀就固定下來(lái)了,。用戶只能利用一臺(tái)傳統(tǒng)儀器完成某個(gè)功能固定的測(cè)試任務(wù)。一旦測(cè)試需求改變,,則必須再次購(gòu)買(mǎi)滿足新需求的儀器,。
而虛擬儀器的優(yōu)勢(shì)則在于,它除了基礎(chǔ)的信號(hào)采集部分,,其它軟硬件全部采用通用的計(jì)算機(jī)軟硬件設(shè)備,。這些通用的軟硬件設(shè)備可以以低廉的價(jià)格進(jìn)行升級(jí),或者被使用者按自己意愿進(jìn)行配置,。比如,,在虛擬儀器上,用戶可以通過(guò)升級(jí)CPU來(lái)加快儀器的處理速度,、可以自己編寫(xiě)程序來(lái)改變儀器的測(cè)試功能和交互界面,。
虛擬儀器系統(tǒng)的軟硬件結(jié)構(gòu)
按照系統(tǒng)中各部分之間的依賴關(guān)系,可以把一套虛擬儀器系統(tǒng)劃分成幾個(gè)層次,,如圖 2所示,。最籠統(tǒng)的劃分方式是把虛擬儀器系統(tǒng)劃分為軟件部分和硬件部分。
雖然軟件是虛擬儀器系統(tǒng)的主體,,但硬件仍然是整個(gè)系統(tǒng)最基礎(chǔ)的部分,。硬件主要負(fù)責(zé)將被測(cè)量物理信號(hào)轉(zhuǎn)換為二進(jìn)制的數(shù)字信號(hào)數(shù)據(jù),而軟件系統(tǒng)一方面負(fù)責(zé)控制硬件的工作,,一方面又負(fù)責(zé)對(duì)采集到的數(shù)據(jù)進(jìn)行分析處理,、顯示和存儲(chǔ)。
設(shè)計(jì)虛擬儀器的硬件部分時(shí)需要考慮多種因素,以下列舉其中最主要的幾個(gè):
* 被測(cè)量物理信號(hào)的特性,。不同的物理信號(hào)需要使用不同類(lèi)型的傳感器將其轉(zhuǎn)換為可供電腦分析的數(shù)字電信號(hào),,而不同的傳感器又需要配備不同的信號(hào)調(diào)理模塊。某些早期虛擬儀器系統(tǒng)直接通過(guò)GPIB等總線與傳統(tǒng)儀器相連,,利用傳統(tǒng)儀器的硬件部分轉(zhuǎn)換和采集被測(cè)信號(hào),。
* 硬件技術(shù)指標(biāo)。不同檔次的數(shù)據(jù)采集設(shè)備可以支持的采樣率,、分辨率以及精度等都有差別,。通常,一套系統(tǒng)會(huì)選取能夠滿足測(cè)量需要的硬件或是不超出資金預(yù)算的硬件,。
* 滿足應(yīng)用需求,。根據(jù)虛擬儀器系統(tǒng)工作環(huán)境的不同,需要為系統(tǒng)選擇不同種類(lèi)的運(yùn)算,、控制單元,。比如,,工作在惡劣環(huán)境下的虛擬儀器系統(tǒng)需要采用工業(yè)級(jí)別計(jì)算機(jī)作為載體;被放置在工業(yè)現(xiàn)場(chǎng)狹小空間內(nèi)的虛擬儀器需要采用嵌入式系統(tǒng);需要滿足多種測(cè)量功能的虛擬儀器系統(tǒng)可以選用PXI機(jī)箱作為載體,。
設(shè)計(jì)虛擬儀器系統(tǒng)的軟件部分首先需要考慮的是使用何種開(kāi)發(fā)平臺(tái)。開(kāi)發(fā)平臺(tái)的選擇,,一要考慮系統(tǒng)硬件的限制,,二要考慮軟件開(kāi)發(fā)的周期和成本。
某些硬件只支持特定的開(kāi)發(fā)軟件,,比如某些嵌入式系統(tǒng)必須使用Linux操作系統(tǒng)和C編程語(yǔ)言,。一般來(lái)說(shuō)基于臺(tái)式機(jī)的虛擬儀器系統(tǒng)對(duì)開(kāi)發(fā)軟件的支持更全面,可以選擇Windows或其它操作系統(tǒng),,可以選擇LabVIEW,、VB 、VC等各種常用編程語(yǔ)言,。這其實(shí)也是在硬件設(shè)計(jì)時(shí)應(yīng)當(dāng)考慮的因素,,選擇虛擬儀器硬件系統(tǒng)的結(jié)構(gòu)時(shí),應(yīng)當(dāng)盡量選擇有完善軟件支持的硬件設(shè)備,。
各種開(kāi)發(fā)軟件的適用場(chǎng)合,、難易程度都不盡相同。選擇一種最為廣泛應(yīng)用的開(kāi)發(fā)語(yǔ)言,,可以提高軟件開(kāi)發(fā)效率,,節(jié)省開(kāi)發(fā)成本,保證系統(tǒng)質(zhì)量,。
根據(jù)TIOBE公司統(tǒng)計(jì)的各類(lèi)編程語(yǔ)言的使用情況,,近年來(lái)Java、C,、C++始終是使用的最為廣泛的編程語(yǔ)言,。但就測(cè)試測(cè)量領(lǐng)域來(lái)說(shuō),,情況并非如此。在測(cè)控領(lǐng)域,,使用最為廣泛的編程語(yǔ)言是LabVIEW,,它也是開(kāi)發(fā)虛擬儀器系統(tǒng)的經(jīng)典編程語(yǔ)言。