新聞中心

EEPW首頁 > 測試測量 > 設計應用 > LabVIEW子VI與VI的層次結(jié)構(gòu)

LabVIEW子VI與VI的層次結(jié)構(gòu)

作者: 時間:2017-01-09 來源:網(wǎng)絡 收藏
例2-1是我們創(chuàng)建的第一個VI,也是一個極其簡單的VI。其實在圖形化語言中,最經(jīng)常使用的是子VI。子VI類似于文本語言中的子程序。
在圖形化語言中,子VI是提供給其它VI使用的VI,子VI可以實現(xiàn)與調(diào)用VI之間的數(shù)據(jù)交換。子VI除了可以被其它VI使用外,它的另一個作用就是簡化程序框圖。對于一個復雜的程序框圖可以通過創(chuàng)建多個子VI來進行化簡。

子VI是模塊化程序設計的基礎(chǔ)和主要部件。子VI使得程序易于調(diào)試、理解和維護。所以理解和創(chuàng)建子VI是構(gòu)建VI的基礎(chǔ)。

LabVIEW函數(shù)選板上所提供的內(nèi)置VI都屬于子VI。這些內(nèi)置VI是LabVIEW開發(fā)環(huán)境所提供的,安裝LabVIEW后即可獲得。除此之外,我們還可以創(chuàng)建適合自己使用的子VI。
2.5.1 創(chuàng)建子VI
創(chuàng)建子VI有兩種方法,一是通過創(chuàng)建一個新VI來實現(xiàn);另一個是從現(xiàn)有的VI中提取部分代碼構(gòu)成一個子VI。

我們通過一個濾波器的設計來介紹第一種方法,創(chuàng)建一個適合自己使用的子VI。

例2-2 理想濾波器
濾波器是信號處理中比較常用的部件,在實際工程應用中也常常用到。一般情況下,我們可以選擇LabVIEW所提供的濾波器內(nèi)置VI。在LabVIEW的函 數(shù)選板中,選擇:》信號處理》濾波器可以看到多種濾波器內(nèi)置VI,包括高級IIR濾波器和高級FIR濾波器供我們在設計中使用,參見下圖。
圖 2-14 LabVIEW所提供的濾波器內(nèi)置VI
我們在電動式振動臺的測試項目中,需要準確測試振動加速度的峰值,可是在實際的加速度信號中往往包含許多諧波分量,從而導致無法準確的測量出加速度的峰 值。為了解決這個問題,最好的辦法是就是對加速度信號進行濾波處理。使用上述濾波器內(nèi)置VI可以實現(xiàn)濾波處理,但是我們擔心濾波后信號的幅度和相位是否會 發(fā)生改變。也就是說,濾波器的幅頻特性和相頻特性是否真正會令我們滿意。其實,我們只是期待能夠提取加速度信號的基波分量,并不關(guān)心其它分量的信息。那么 有沒有這樣僅提取基波信號的方法呢?

通過對函數(shù)》信號處理》波形測量》中的諧波失真分析內(nèi)置VI的仔細分析,認為這個內(nèi)置VI可以實現(xiàn)我們提取加速度信號的基波分量的要求。所以我們創(chuàng)建了這個子VI,并將其命名為:理想濾波器,參見下圖。
圖 2-15 理想濾波器程序框圖
這個子VI是我們通過挖掘了諧波失真分析內(nèi)置VI中其它功能來實現(xiàn)的,也就是利用它可以導出信號中的其它信息這個特點實現(xiàn)了基波信號的提取。通過對導出信號項的設置,實現(xiàn)了對基波信號的提取。同時還可以獲得基波頻率和信號的失真度(%)。

之所以稱其為理想濾波器,就是因為它具有極好的幅頻特性和相頻特性。在振動加速度測試中已經(jīng)取得十分滿意的效果。


2.5.2 創(chuàng)建子VI的圖標和連線板
已經(jīng)創(chuàng)建完成的VI還不是子VI,因為我們還沒有為這個VI創(chuàng)建它的數(shù)據(jù)輸入輸出通道和圖標。建立輸入輸出通道應該是子VI最重要的特征之一,通過輸入輸出通道才可以實現(xiàn)子VI與其它VI間的數(shù)據(jù)交換。

圖標是區(qū)分VI的標志,圖標的創(chuàng)建方法這里不具體說明,大家可以參照幫助文件來試著完成。圖標和前面板,參見下圖。
圖 2-17 例2-2的前面板和圖標
下面創(chuàng)建連線板,具體操作是:在前面板中,鼠標單擊圖標在彈出的快捷菜單中選擇顯示連線板,然后對應將前面板中的控件與連線板一一對應分配。參見下圖。
圖 2-18 例2-2的前面板和連線板
至此,子VI創(chuàng)建完成,保存后就可以供其它程序使用。對于常用的子VI建議存儲到用戶庫中,當然別忘了為它創(chuàng)建簡要的說明文檔。

下面我們繼續(xù)通過VI的屬性來確定子VI的前面板外觀和運行時的位置。
上一頁 1 2 下一頁

關(guān)鍵詞: LabVIEWVI層次結(jié)

評論


技術(shù)專區(qū)

關(guān)閉