關(guān)鍵字:虛擬儀器, 虛擬儀器技術(shù),虛擬儀器開發(fā),USB虛擬儀器,基于PC的虛擬儀器
[關(guān)鍵詞] 測(cè)控系統(tǒng),;虛擬儀器,;軟硬件
1 引 言
隨著微電子技術(shù)、計(jì)算機(jī)技術(shù),、軟件技術(shù),、網(wǎng)絡(luò)技術(shù)的高度發(fā)展及其在電子測(cè)量技術(shù)與儀器上的應(yīng)用,新的測(cè)試?yán)碚?、新的測(cè)試方法,、新的測(cè)試領(lǐng)域以及新的儀器結(jié)構(gòu)不斷出現(xiàn),在許多方面已經(jīng)突破傳統(tǒng)儀器的概念,,電子測(cè)量?jī)x器的功能和作用已經(jīng)發(fā)生了質(zhì)的變化,。在這種背景下,美國(guó)國(guó)家儀器公司(National Instruments Corporation,,簡(jiǎn)稱NI)在20世紀(jì)80年代最早提出虛擬儀器(Virtual Instrument,,簡(jiǎn)稱VI)的概念。虛擬儀器這種計(jì)算機(jī)操縱的模塊化儀器系統(tǒng)在世界范圍內(nèi)得到了廣泛的認(rèn)同和應(yīng)用,,國(guó)內(nèi)近幾年的應(yīng)用需求急劇高漲,。因此,虛擬儀器的產(chǎn)生是測(cè)控領(lǐng)域的一次革命。
2 虛擬儀器的基本概念,、特點(diǎn)及其構(gòu)成
所謂虛擬儀器,,就是在以通用計(jì)算機(jī)為核心的硬件平臺(tái)上,由用戶設(shè)計(jì)定義,、具有虛擬前面板,、測(cè)試功能由測(cè)試軟件實(shí)現(xiàn)的一種計(jì)算機(jī)儀器系統(tǒng)。其基本思想就是在測(cè)試系統(tǒng)或儀器設(shè)計(jì)中盡可能地用軟件代替硬件,,即“軟件就是儀器”,。簡(jiǎn)而言之VI系統(tǒng)是由計(jì)算機(jī)、應(yīng)用軟件和儀器硬件組成的,。用戶可以通過友好的圖形界面(這里稱作虛擬前面板)操作計(jì)算機(jī),,如同操作功能相同的單臺(tái)傳統(tǒng)儀器一樣。虛擬儀器具有以下特點(diǎn):
① 在通用硬件平臺(tái)確定后,,由軟件取代傳統(tǒng)儀器中的硬件來完成儀器的功能,。
② 儀器的功能是用戶根據(jù)需要由軟件來定義的,而不是事先由廠家定義好的,。
③ 儀器性能的改進(jìn)和功能擴(kuò)展只需進(jìn)行相關(guān)軟件的設(shè)計(jì)更新,,而不需購(gòu)買新的儀器。
④ 研制周期較傳統(tǒng)儀器大為縮短,。
⑤ 虛擬儀器開放,、靈活,可與計(jì)算機(jī)同步發(fā)展,,可與網(wǎng)絡(luò)及其它周邊設(shè)備互聯(lián),。
與傳統(tǒng)非數(shù)字化儀器相比,虛擬儀器技術(shù)的優(yōu)勢(shì)在于用戶自定義儀器功能,、結(jié)構(gòu)等,,且構(gòu)建容易,轉(zhuǎn)換靈活以及其開放性,。
虛擬儀器的基本構(gòu)成包括計(jì)算機(jī),、虛擬儀器軟件、硬件接口模塊等,。其中,,硬件接口模塊可以包括插入式數(shù)據(jù)采集卡(DAQ)、串/并口,、IEEE488接口(GPIB)卡,、VXI控制器以及其它接口卡。目前較為常用的虛擬儀器系統(tǒng)是數(shù)據(jù)采集卡系統(tǒng),、GPIB儀器控制系統(tǒng),、VXI儀器系統(tǒng)以及這三者之間的任意組合。在這里,硬件僅僅是為了解決信號(hào)的輸入輸出,,軟件才是整個(gè)系統(tǒng)的關(guān)鍵,。
2.1 虛擬儀器的硬件構(gòu)成
如圖2—1所示,虛擬儀器的硬件構(gòu)成有多種方案,,通常采用以下幾種:
(1)基于數(shù)據(jù)采集的虛擬儀器系統(tǒng)
這種方式借助于插入計(jì)算機(jī)內(nèi)的數(shù)據(jù)采集卡與專用的軟件如LabVIEW(或LabWindows/CVI)相結(jié)合,,通過A/D變換將模擬、數(shù)字信號(hào)采集到計(jì)算機(jī)進(jìn)行分析,、處理,、顯示等,并可通過D/A轉(zhuǎn)換實(shí)現(xiàn)反饋控制,。根據(jù)需要還可加入信號(hào)調(diào)理和實(shí)時(shí)DSP等硬件模塊,。
(2)基于通用接口總線GPIB接口的儀器系統(tǒng)
GPIB(General Purpose Interface Bus)儀器系統(tǒng)的構(gòu)成是邁向虛擬儀器的第一步,即利用GPIB接口卡將若干GPIB儀器連接起來,,用計(jì)算機(jī)增強(qiáng)傳統(tǒng)儀器的功能,,組織大型柔性自動(dòng)測(cè)試系統(tǒng),技術(shù)易于升級(jí),,維護(hù)方便,,儀器功能和面板自定義,開發(fā)和使用容易,。它可高效靈活地完成各種不同規(guī)模的測(cè)試測(cè)量任務(wù)。利用GPIB技術(shù),,可由計(jì)算機(jī)實(shí)現(xiàn)對(duì)儀器的操作和控制,,替代傳統(tǒng)的人工操作方式,排除人為因素造成的測(cè)試測(cè)量誤差,。同時(shí),,由于可預(yù)先編制好測(cè)試程序,實(shí)現(xiàn)自動(dòng)測(cè)試,,提高了測(cè)試效率,。
(3)利用VXI總線儀器實(shí)現(xiàn)虛擬儀器系統(tǒng)
VXI(VMEbus ExtensionforInstrumentation)總線為虛擬儀器系統(tǒng)提供了一個(gè)更為廣闊的發(fā)展空間。VXI總線是一種高速計(jì)算機(jī)總線———VME(VersaModule Eurocard)總線在儀器領(lǐng)域的擴(kuò)展,。由于其標(biāo)準(zhǔn)開放,、傳輸速率高、數(shù)據(jù)吞吐能力強(qiáng),、定時(shí)和同步精確,、模塊化設(shè)計(jì)、結(jié)構(gòu)緊湊,、使用方便靈活,,已越來越受到重視。它便于組織大規(guī)模、集成化系統(tǒng),,是儀器發(fā)展的一個(gè)方向,。
(4)基于串行口或其它工業(yè)標(biāo)準(zhǔn)總線的系統(tǒng)
將某些串行口儀器和工業(yè)控制模塊連接起來,組成實(shí)時(shí)監(jiān)控系統(tǒng),。將帶有RS-232總線接口的儀器作為I/O接口設(shè)備通過RS-232串口總線與PC計(jì)算機(jī)組成虛擬儀器系統(tǒng),,目前仍然是虛擬儀器的構(gòu)成方式之一。當(dāng)今,,PC計(jì)算機(jī)已更多地采用了USB總線和IEEE1394總線,。
2.2 虛擬儀器的軟件體系構(gòu)成
構(gòu)成一個(gè)虛擬儀器系統(tǒng),基本硬件確定以后,,就可通過不同的軟件實(shí)現(xiàn)不同的功能,。軟件是虛擬儀器系統(tǒng)的關(guān)鍵。沒有一個(gè)優(yōu)秀的控制分析軟件,,很難構(gòu)成一臺(tái)理想的虛擬儀器系統(tǒng),。根據(jù)VPP(VXIPlug&Play)系統(tǒng)規(guī)范的定義,虛擬儀器系統(tǒng)的軟件結(jié)構(gòu)應(yīng)包含3部分,,如圖2—2所示:
(1)I/O接口軟件
I/O接口軟件存在于儀器(即I/O接口設(shè)備)與儀器驅(qū)動(dòng)程序之間,,是一個(gè)完成對(duì)儀器寄存器單元進(jìn)行直接存取數(shù)據(jù)操作,并為儀器與儀器驅(qū)動(dòng)程序提供信息傳遞的底層軟件,,是實(shí)現(xiàn)開放的,、統(tǒng)一的虛擬儀器系統(tǒng)的基礎(chǔ)與核心。在VPP系統(tǒng)規(guī)范中,,詳細(xì)規(guī)范了虛擬儀器的I/O接口軟件的特點(diǎn),、組成、內(nèi)部結(jié)構(gòu)與實(shí)現(xiàn)規(guī)范,,并將符合VPP規(guī)范的虛擬儀器I/O接口軟件定義為VISA軟件,。
(2)儀器驅(qū)動(dòng)程序
每個(gè)儀器模塊均有自己的儀器驅(qū)動(dòng)程序。儀器驅(qū)動(dòng)程序的實(shí)質(zhì)是為用戶提供了用于儀器操作的較抽象的操作函數(shù)集,。對(duì)于應(yīng)用程序來說,,它對(duì)儀器的操作是通過儀器驅(qū)動(dòng)程序來實(shí)現(xiàn)的;儀器驅(qū)動(dòng)程序?qū)τ趦x器的操作與管理,,又是通過I/O軟件所提供的統(tǒng)一基礎(chǔ)與格式的函數(shù)庫(kù)(VISA)的調(diào)用來實(shí)現(xiàn)的,。對(duì)于應(yīng)用程序設(shè)計(jì)人員來說,一旦有了儀器驅(qū)動(dòng)程序,,在不是十分了解儀器內(nèi)部操作過程的情況下,,也可以進(jìn)行虛擬儀器系統(tǒng)的設(shè)計(jì)工作。虛擬儀器驅(qū)動(dòng)程序是連接上層應(yīng)用程序與底層I/O接口軟件的紐帶和橋梁,。
(3)應(yīng)用軟件開發(fā)環(huán)境
應(yīng)用軟件開發(fā)環(huán)境的選擇,,可因開發(fā)人員的喜好不同而不同,,但最終都必須提供給用戶一個(gè)界面友好、功能強(qiáng)大的應(yīng)用程序,。在目前,,虛擬儀器系統(tǒng)應(yīng)用軟件開發(fā)環(huán)境主要包括兩種:
①基于傳統(tǒng)的文本語言式的平臺(tái)。主要是NI公司的LabWindows/CVI,、Microsoft公司的VisualC++,、Visual Basic、Borland公司的Delphi等,。
②基于圖形化編程環(huán)境的平臺(tái),。如HP公司的HPVEE、NI公司的LabVIEW等,。圖形化軟件開發(fā)平臺(tái)的提出,,可以大大減輕系統(tǒng)開發(fā)人員的負(fù)擔(dān),使其將主要精力集中投入到系統(tǒng)設(shè)計(jì)中,,而不再是具體軟件細(xì)節(jié)的推敲上,。
3 虛擬儀器的關(guān)鍵技術(shù)
虛擬儀器的發(fā)展領(lǐng)域非常廣闊,開發(fā)虛擬儀器既要擁有計(jì)算機(jī)技術(shù),,又要擁有信息處理技術(shù),。總線技術(shù)是VI的一個(gè)關(guān)鍵問題,,VI需要利用計(jì)算機(jī)的擴(kuò)展槽,、PCI插槽或ISA插槽,所以開發(fā)VI的儀器硬件,,首先要確定應(yīng)采用哪一種總線標(biāo)準(zhǔn),,PCI總線是一種最新的計(jì)算機(jī)總線規(guī)范,它兼容性強(qiáng),,功能全,傳輸率高,,工作時(shí)鐘頻率33MHz,,結(jié)構(gòu)與處理器獨(dú)立,適合于未來的計(jì)算機(jī),。1997年9月,,美國(guó)NI公司發(fā)布了一項(xiàng)PXI總線標(biāo)準(zhǔn),PXI(PCIExtention forInstrument)是PCI在儀器領(lǐng)域的擴(kuò)展,。開發(fā)VI可以考慮采用PXI標(biāo)準(zhǔn),,因?yàn)閿?shù)據(jù)處理工作量大,VI的儀器硬件部分要盡量做得功能強(qiáng)大,,否則,,采用軟件會(huì)影響儀器處理速度,。目前,虛擬儀器已具備時(shí)域分析和頻率域分析的功能,,速度都非??臁?
圖形化的編程環(huán)境是VI技術(shù)的又一關(guān)鍵因素,。1986年,,NI公司推出了LabVIEW軟件包,它簡(jiǎn)單直觀,、效率高,、速度快、具有優(yōu)化的圖形編譯機(jī)制,,獨(dú)特快捷的查錯(cuò),、調(diào)試方法,極大地提高了運(yùn)行速度,,采用LabVIEW可以數(shù)倍地提高系統(tǒng)開發(fā)速度,。近年來基于Windows95和WindowsNT的開發(fā)平臺(tái)成為后起之秀,可以使用Visual C++,、Visual Basic,、BorlandC++等功能強(qiáng)大的編程軟件編寫專用應(yīng)用軟件。
4 虛擬儀器的整體設(shè)計(jì)
在科學(xué)研究與工程實(shí)驗(yàn)室里,,有各種各樣的儀器與設(shè)備,。如何提高它們的綜合使用效率?如何對(duì)它們進(jìn)行更有效的管理,?是儀器用戶值得考慮的問題,。目前,最有效的方法是采用“虛擬儀器”技術(shù),。即充分利用計(jì)算機(jī)強(qiáng)大的管理與處理能力,,以此為基礎(chǔ),將實(shí)驗(yàn)室相關(guān)設(shè)備搭配起來,,構(gòu)成一種全新的實(shí)驗(yàn)環(huán)境,。實(shí)驗(yàn)室中的儀器與設(shè)備一般都是具有特定功能的單臺(tái)設(shè)備。如果它們具有某種總線接口,,就有可能進(jìn)行虛擬儀器的構(gòu)造,。步驟如下:
1)確定所用儀器或設(shè)備的接口形式。如果儀器設(shè)備具有RS-232串行總線接口,,則不用進(jìn)行處理,,直接用連線將儀器設(shè)備與計(jì)算機(jī)的RS-232串行接口連接即可;如果是GPIB或HP-IB接口,,則需要額外配備一塊GPIB-488接口板,,將接口板插入計(jì)算機(jī)的ISA插槽,,建立起計(jì)算機(jī)與儀器設(shè)備之間的通訊渠道;如果使用計(jì)算機(jī)來控制VXI總線設(shè)備,,也需要配備一塊GPIB接口卡,,通過GPIB總線與VXI主機(jī)箱零槽模塊通信,零槽模塊的GPIB-VXI翻譯器將GPIB的命令翻譯成VXI命令并把各模塊返回的數(shù)據(jù)以一定的格式傳回主控計(jì)算機(jī),。由于計(jì)算機(jī)的RS-232串行接口有限,,若儀器設(shè)備比較多,必要時(shí)必須擴(kuò)展計(jì)算機(jī)的RS-232接口,。市場(chǎng)上此類產(chǎn)品品種繁多,,用戶可以根據(jù)具體情況,選擇合適的RS-232總線接口擴(kuò)展產(chǎn)品,。
2)確定所選擇的接口卡是否具有設(shè)備驅(qū)動(dòng)程序,。接口卡的設(shè)備驅(qū)動(dòng)程序是控制各種硬件接口的驅(qū)動(dòng)程序,是連接主控計(jì)算機(jī)與儀器設(shè)備的紐帶,;如果有設(shè)備驅(qū)動(dòng)程序,,它適合于何種操作系統(tǒng)?如果沒有,,或者所帶的設(shè)備驅(qū)動(dòng)程序不符合用戶所用的操作系統(tǒng),,用戶就有必要針對(duì)所用接口卡,編寫設(shè)備驅(qū)動(dòng)程序,。
3)確定應(yīng)用管理程序的編程語言,。如果用戶有專業(yè)的圖形化編程軟件,如LabVIEW,、HPVEE,,那么就可以采用專業(yè)的圖形化編程軟件進(jìn)行編程。如果沒有此類軟件,,則可以采用通用編程語言,,如VisualC++、Visual Basic或者Delphi,。由于它們易于使用,、功能強(qiáng)大而倍受測(cè)控人員的青睞。
4)在硬件連接無誤的情況下,,編寫用戶的應(yīng)用管理程序。
5 結(jié)束語
虛擬儀器技術(shù)使現(xiàn)代測(cè)控系統(tǒng)更靈活,、更緊湊,、更經(jīng)濟(jì)、功能更強(qiáng),。而圖形編程方式使系統(tǒng)軟件開發(fā)更省時(shí),、更省力,、更容易。無論是測(cè)量,、測(cè)試,、計(jì)量,或是工業(yè)過程控制和分析處理,,還是其它更為廣泛的測(cè)控領(lǐng)域,,虛擬儀器都是理想的高效率的解決方案。隨著計(jì)算機(jī)技術(shù)的不斷發(fā)展,,虛擬儀器技術(shù)也會(huì)在各領(lǐng)域中發(fā)揮其重要作用,,并表現(xiàn)出強(qiáng)大的生命力,它必然會(huì)對(duì)科技發(fā)展和工業(yè)生產(chǎn)產(chǎn)生不可估量的影響,。
[參考文獻(xiàn)]
[1] 李 剛,,林 凌.LabVIEW—易學(xué)易用的計(jì)算機(jī)圖形化編程語言[M].北京航空航天大學(xué)出版社.
[2] 袁 翔,等.基于總線式的虛擬儀器系統(tǒng)[J].機(jī)電工程,,1998(4).
[3] 劉君華,,賈惠芹,等.虛擬儀器圖形化編程語言—Lab-VIEW教程[M].西安電子科技大學(xué)出版社.
[4] 施珍珠,,張 瑋,,等.虛擬儀器技術(shù)[J].國(guó)外電子測(cè)量技術(shù),2002(1).
[5] 李曉維.虛擬儀器技術(shù)分析[J].電子測(cè)量與儀器學(xué)報(bào),,1996(3).
[6] 秦樹人,,張思復(fù),湯寶平,,等.集成測(cè)試技術(shù)與虛擬式儀器[J].中國(guó)機(jī)械工程,,1999(1).
[7] 楊樂平,李海濤,,肖相生,,等.LabVIEW程序設(shè)計(jì)與應(yīng)用[M].電子工業(yè)出版社.