張鏡照 胡義軍
(中國(guó)船舶重工集團(tuán)公司的第七一二研究所,武漢 430064)
虛擬儀器技術(shù)已在測(cè)試和測(cè)量領(lǐng)域廣為應(yīng)用。隨著工程人員對(duì)虛擬儀器要求的不斷提高,NI虛擬儀器技術(shù)利用不斷革新的LabVIEW軟件以及數(shù)以百計(jì)的測(cè)量硬件設(shè)備,逐漸擴(kuò)大了它所觸及的應(yīng)用范圍。目前,NI虛擬儀器技術(shù)將應(yīng)用擴(kuò)展到了控制和設(shè)計(jì)領(lǐng)域,加速促進(jìn)了控制和設(shè)計(jì)技術(shù)水平的發(fā)展。
NI為虛擬儀器技術(shù)提供多種軟件平臺(tái),可以利用這些軟件定制和開發(fā)相關(guān)的應(yīng)用,從而最大程度上發(fā)揮虛擬儀器的優(yōu)勢(shì)。在這其中LabVIEW是一個(gè)最為主要的開發(fā)工具。
NI LabVIEW是一種圖形化的編程語言,用于快速創(chuàng)建靈活的、可升級(jí)的測(cè)試、測(cè)量和控制應(yīng)用程序。使用LabVIEW,工程技術(shù)人員可以采集到實(shí)際信號(hào),并對(duì)其進(jìn)行分析得出有用信息,然后將測(cè)量結(jié)果和應(yīng)用程序進(jìn)行分享。
LabVIEW 是一個(gè)面向測(cè)試測(cè)量與自動(dòng)化的高級(jí)編程軟件,他除了具備其他高級(jí)編程軟件的特性和功能以外,還專門為測(cè)試、測(cè)量、與控制開發(fā)了相應(yīng)的功能,具體如下:
NI LabVIEW可以提供與多種數(shù)據(jù)采集與控制設(shè)備的無縫連接。可以通過基于配置的交互式界面完成測(cè)試測(cè)量任務(wù),而無需了解硬件底層繁瑣的驅(qū)動(dòng)程序。與此同時(shí)還提供了針對(duì)硬件操作的從最底層到高層的編程接口,可以在最大程度上獲得對(duì)硬件的操控性。LabVIEW可以實(shí)現(xiàn)基于PC,PXI,SCXI,PAC等不同平臺(tái)的數(shù)據(jù)采集任務(wù)。除了與硬件的高度集成以外,LabVIEW同時(shí)可以方便迅速的完成數(shù)據(jù)的存貯、報(bào)警、分析、發(fā)布任務(wù)。同時(shí) LabVIEW還融合了通過 ODBC與第三方數(shù)據(jù)庫(kù)連接,以及通過ActiveX和動(dòng)態(tài)鏈接技術(shù)與第三方軟件交互的功能。
NI LabVIEW具有許多種不同的方式控制儀器——可以使用儀器驅(qū)動(dòng)程序,或者通過直接的I/O命令來控制儀器(見圖1)。
圖1 用于儀器控制儀器驅(qū)動(dòng)和交互式、直接I/O工具
LabVIEW將傳統(tǒng)儀器設(shè)備、PLC、以態(tài)網(wǎng)設(shè)備、PXI、VXI、或者是 USB設(shè)備看作是儀器的控制對(duì)象,不管儀器提供哪種總線的連接方式,都可以進(jìn)行控制和數(shù)據(jù)采集。同時(shí),LabVIEW為主流儀器提供了“儀器驅(qū)動(dòng)”這一工具,從而簡(jiǎn)化了儀器編程。
LabVIEW 數(shù)據(jù)記錄與監(jiān)控模塊是交互地開發(fā)分布式監(jiān)測(cè)和控制系統(tǒng)的最佳途徑,它提供了直觀向?qū)Ш蛯?duì)話框能快速優(yōu)質(zhì)地開發(fā)應(yīng)用程序,例如創(chuàng)建一個(gè)完整的工業(yè)自動(dòng)化控制系統(tǒng)、多通道數(shù)據(jù)記錄應(yīng)用程序或檢測(cè)并記錄數(shù)十個(gè)歷史I/O點(diǎn)等。同時(shí)能拓展LabVIEW應(yīng)用,如:查看實(shí)時(shí)和歷史數(shù)據(jù);配置并管理警報(bào)和事件;為應(yīng)用設(shè)置安全機(jī)制;輕松地將OPC設(shè)備與LabVIEW實(shí)時(shí)終端聯(lián)入同一完整的系統(tǒng);將數(shù)據(jù)高效地記入分布式歷史數(shù)據(jù)庫(kù)中。
NI LabVIEW 為工業(yè)自動(dòng)化與自動(dòng)化控制應(yīng)用提供了相關(guān)的軟、硬件支持。其中,LabVIEW實(shí)時(shí)模塊、PID/模糊控制模塊、以及LabVIEW數(shù)據(jù)記錄與監(jiān)控軟件可以用于完成從下位機(jī)控制到上位組態(tài)等一系列任務(wù),從而避免了從過去的梯形圖編程到上位人機(jī)界面的一系列不同軟件功能的集成工作,也進(jìn)一步避免了軟件的兼容性和硬件的兼容性問題。
NI LabVIEW提供了集成的分析函數(shù),構(gòu)成了一個(gè)功能強(qiáng)大的圖形化應(yīng)用程序開發(fā)環(huán)境。此外,LabVIEW還提供了對(duì)插入式DAQ設(shè)備和獨(dú)立儀器的連接性以用于采集數(shù)據(jù);強(qiáng)大的分析庫(kù)、程序和算法,從基本的數(shù)學(xué)到高級(jí)的信號(hào)處理,能夠滿足通用的應(yīng)用程序和更深層次的需要,這些都可以在 LabVIEW 中與所有其他的函數(shù)無縫地集成。下圖為使用 LabVIEW 創(chuàng)建的應(yīng)用程序被稱為VI(虛擬儀器)。
圖2 LabVIEW VI程序框圖
一個(gè)虛擬儀器系統(tǒng)包含了一臺(tái)已配備強(qiáng)大應(yīng)用軟件的工業(yè)標(biāo)準(zhǔn)計(jì)算機(jī)或工作站,成本低廉的硬件(例如插入式板卡),以及驅(qū)動(dòng)軟件,通過使用 PC的強(qiáng)大功能,將所有的需求與強(qiáng)大的圖形化編程和現(xiàn)有的數(shù)據(jù)采集硬件結(jié)合起來,將數(shù)據(jù)采集、數(shù)據(jù)分析和結(jié)果顯示結(jié)合起來,同時(shí)還提供了數(shù)以百計(jì)的分析函數(shù),可以將這些函數(shù)集成至應(yīng)用程序中,做到智能測(cè)量并更為快速地獲取結(jié)果。因而最大化了虛擬儀器系統(tǒng)的功能。
LabVIEW具有系統(tǒng)控制設(shè)計(jì)與仿真工具,包括系統(tǒng)辨識(shí)、控制設(shè)計(jì)、系統(tǒng)仿真工、仿真接口、執(zhí)行跟蹤等工具包,提供了一種從模型、算法、到硬件連接的完整解決方案。與 Matlab不同的是,NI控制與仿真解決方案提供從模型到實(shí)時(shí)硬件的無縫連接,可以很方便將控制系統(tǒng)模型應(yīng)用到控制器設(shè)計(jì)、半實(shí)物仿真等應(yīng)用中去。而且,在系統(tǒng)控制設(shè)計(jì)與仿真的整個(gè)過程中,可以只使用一個(gè)平臺(tái),充分實(shí)現(xiàn)了一個(gè)“可復(fù)用的平臺(tái)”這一虛擬儀器中最重要的理念。
圖3 控制設(shè)計(jì)與仿真
NI LabVIEW視覺開發(fā)模塊用于機(jī)器視覺和科學(xué)圖像應(yīng)用,包括NI Vision Assistant——供需要不通過編程就實(shí)現(xiàn)將 LabVIEW 應(yīng)用快速成型的直觀環(huán)境以及IMAQ視覺——擁有強(qiáng)大視覺處理函數(shù)的庫(kù)。與其它視覺產(chǎn)品不同,NI Vision Assistant和IMAQ視覺的緊密協(xié)同工作簡(jiǎn)化了視覺軟件的開發(fā)。NI Vision Assistant可自動(dòng)生成LabVIEW程序,可以將程序框圖集成到自動(dòng)化或生產(chǎn)測(cè)試應(yīng)用中,用于運(yùn)動(dòng)控制、儀器控制和數(shù)據(jù)采集等。
NI LabVIEW可在圖形化開發(fā)環(huán)境中將嵌入式對(duì)象,如32位微處理器、FPGA和DSP作為開發(fā)對(duì)象。通過NI LabVIEW嵌入式開發(fā)模塊為任何32位微處理器進(jìn)行圖形化編程。 LabVIEW FPGA模塊為NI可重配置的I/O(RIO)硬件上的現(xiàn)場(chǎng)編程門陣列(FPGA)提供了圖形化開發(fā)環(huán)境。通過上述模塊,可直接訪問I/O同時(shí)具有自定義LabVIEW邏輯,從而定制硬件。
LabVIEW 提供時(shí)頻域分析、聲音與振動(dòng)工具包,以及階次分析工具包。可以方便的將機(jī)械系統(tǒng)監(jiān)控與故障診斷功能集成到系統(tǒng)中來,而不必像以往一樣購(gòu)買專用儀器,不但節(jié)約了軟、硬件投資,而且提高了系統(tǒng)的集成性。LabVIEW機(jī)械監(jiān)控與故障診斷為提供對(duì)機(jī)械系統(tǒng),尤其是旋轉(zhuǎn)機(jī)械系統(tǒng)的共振(固有頻率測(cè)試)、不平衡、偏心、齒輪磨損、軸系磨損、部件松動(dòng)等測(cè)試。
可以說 LabVIEW 為工業(yè)控制與監(jiān)控、系統(tǒng)仿真、測(cè)試測(cè)量和產(chǎn)品設(shè)計(jì)提供了一個(gè)統(tǒng)一的開發(fā)平臺(tái),它提供的是一個(gè)靈活、可以自定義的平臺(tái),可以加入設(shè)計(jì)者的算法或者知識(shí)庫(kù)來擴(kuò)充系統(tǒng)功能,同時(shí)可以用LabVIEW現(xiàn)有的底層函數(shù),而不必局限于過于底層的數(shù)字信號(hào)處理細(xì)節(jié)。
作為產(chǎn)品的開發(fā)平臺(tái),對(duì)平臺(tái)的軟件與硬件的開放性是一個(gè)很重要的考慮因素。與眾多產(chǎn)品不同的是,NI虛擬儀器技術(shù)的軟硬件平臺(tái)提供優(yōu)越的開放性和自定義性。可以很方便的將設(shè)計(jì)者的產(chǎn)品設(shè)計(jì)和其他第三方設(shè)計(jì)軟件結(jié)合起來,從而提供了產(chǎn)品設(shè)計(jì)的便利,并方便對(duì)設(shè)計(jì)數(shù)據(jù)與設(shè)計(jì)算法的導(dǎo)入或?qū)С?。方便和NI LabVIEW軟件進(jìn)行接口的專業(yè)設(shè)計(jì)軟件包括了計(jì)算工具、電路輔助設(shè)計(jì)、控制仿真工具、機(jī)械設(shè)計(jì)、以及嵌入式開發(fā)工具等。
該平臺(tái)的開放性還體現(xiàn)在,他是一個(gè)跨平臺(tái)的開放工具,除了可以在windows系統(tǒng)上使用之外,LabVIEW 還支持 Windows、Unix、Linux、Mac OS、WinCE等操作系統(tǒng)。
硬件開放性分三個(gè)層次說明。
(1)高層設(shè)備的開放性:
? PXI系統(tǒng):所有符合PXISA組織規(guī)范的PXI產(chǎn)品均可以使用。
? PAC系統(tǒng):支持NI公司的cRIO,cFP,CVS等PAC產(chǎn)品。
? PLC系統(tǒng):可以將多家PLC廠商的硬件集成到系統(tǒng)中,NI為這些設(shè)備提供了編程與通訊接口,廠家包括 Siemens,AB,Mitsubishi,Omron,Hitachi,施奈德等眾多廠商,從而解決了PLC系統(tǒng)在硬件層和軟件層上的兼容性問題。
? 其他輔助設(shè)備:包括眾多儀器類的設(shè)備支持,可以讓將聲音振動(dòng)分析、電網(wǎng)監(jiān)測(cè)、圖象信號(hào)、瞬態(tài)高速信號(hào)捕捉等功能充實(shí)的系統(tǒng)中,這些功能都是單一的PLC系統(tǒng)所無法提供的。
(2)總線設(shè)備的開放性:該系統(tǒng)可以實(shí)現(xiàn)復(fù)雜總線的兼容,包括:CAN,Profibus,DeviceNet,F(xiàn)FBus,ControlNet,Modbus,工業(yè)以太網(wǎng),實(shí)時(shí)以太網(wǎng)等混合總線。突破了傳統(tǒng)PLC構(gòu)架的單一總線和單供應(yīng)商局限性。
(3)底層設(shè)備的開放性:
? 32位處理器:任意32位處理器;
? DSP:ADI Blackfin 系列,TI 6xxx系列,以及NI Speedy33系列。
NI虛擬儀器技術(shù)作為工業(yè)控制與監(jiān)控、系統(tǒng)仿真、測(cè)試測(cè)量和產(chǎn)品設(shè)計(jì)領(lǐng)域的統(tǒng)一的開發(fā)平臺(tái),同時(shí)具備了軟硬件方面強(qiáng)大的開放性,在產(chǎn)品測(cè)試、控制和設(shè)計(jì)中得到廣泛應(yīng)用。
測(cè)試一直是虛擬儀器技術(shù)成熟應(yīng)用的領(lǐng)域。為使得產(chǎn)品快速上市和高效生產(chǎn)產(chǎn)品要求有高吞吐量的測(cè)試技術(shù),針對(duì)復(fù)雜多功能產(chǎn)品的精確的同步測(cè)量能力,能夠進(jìn)行快速調(diào)整的靈活重構(gòu)能力。NI虛擬儀器技術(shù)應(yīng)對(duì)這些挑戰(zhàn)提供了一種革新性的解決方案,它將快速軟件開發(fā)和模塊化、靈活的硬件結(jié)合在一起從而創(chuàng)建靈活定義的測(cè)試系統(tǒng)。
在控制和工業(yè)應(yīng)用中PC和PLC都發(fā)揮著十分重要的作用。PC帶來了更大的軟件靈活性和更多的性能,而PLC則提供了優(yōu)良的穩(wěn)定性和可靠性。但是隨著控制需求越來越復(fù)雜,提高性能并同時(shí)保持穩(wěn)定性和可靠性就成為公認(rèn)的需要。NI虛擬儀器技術(shù)的PAC應(yīng)用提供了一條解決之道,PAC應(yīng)用給PC軟件的靈活性增添了PLC的穩(wěn)定性和可靠性。
目前,產(chǎn)品設(shè)計(jì)或開發(fā)主要有三種方式:使用現(xiàn)成可用的硬件進(jìn)行系統(tǒng)集成、開發(fā)自定義硬件系統(tǒng)、綜合以上兩種開發(fā)模式,NI虛擬儀器技術(shù)對(duì)每種方式均有大量的應(yīng)用,充分體現(xiàn)了其強(qiáng)大的靈活性和開放性。
本文通過對(duì)目前應(yīng)用廣泛的基于NI虛擬儀器技術(shù)的產(chǎn)品開發(fā)平臺(tái)功能特點(diǎn)進(jìn)行了簡(jiǎn)要的分析和歸納,并分別描述了該平臺(tái)產(chǎn)品測(cè)試、控制和設(shè)計(jì)中的應(yīng)用,為工程技術(shù)人員在實(shí)際開發(fā)應(yīng)用中提供一定的參考。
[1]雷振山. LabVIEW 7 Express實(shí)用技術(shù)教程. 北京:中國(guó)鐵道出版社, 2005.
[2]王磊等. 精通LabVIEW8.0. 北京: 電子工業(yè)出版社,2007.
[3]陳錫輝等. LabVIEW8.20程序設(shè)計(jì)從入門到精通.北京: 清華大學(xué)出版社, 2007.
[4]葉楓華等.基于 LabVIEW隊(duì)列狀態(tài)機(jī)的數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)算. 現(xiàn)代電子技術(shù). 2010, (4).
[5]聶影等. 基于LabVIEW的隊(duì)列狀態(tài)機(jī)模型研究. 計(jì)算機(jī)測(cè)量與控制, 2007.