LabVIEW子VI與VI的層次結(jié)構(gòu)
在圖形化語言中,子VI是提供給其它VI使用的VI,子VI可以實(shí)現(xiàn)與調(diào)用VI之間的數(shù)據(jù)交換。子VI除了可以被其它VI使用外,它的另一個(gè)作用就是簡化程序框圖。對(duì)于一個(gè)復(fù)雜的程序框圖可以通過創(chuàng)建多個(gè)子VI來進(jìn)行化簡。
子VI是模塊化程序設(shè)計(jì)的基礎(chǔ)和主要部件。子VI使得程序易于調(diào)試、理解和維護(hù)。所以理解和創(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)建一個(gè)新VI來實(shí)現(xiàn);另一個(gè)是從現(xiàn)有的VI中提取部分代碼構(gòu)成一個(gè)子VI。
我們通過一個(gè)濾波器的設(shè)計(jì)來介紹第一種方法,創(chuàng)建一個(gè)適合自己使用的子VI。
例2-2 理想濾波器
濾波器是信號(hào)處理中比較常用的部件,在實(shí)際工程應(yīng)用中也常常用到。一般情況下,我們可以選擇LabVIEW所提供的濾波器內(nèi)置VI。在LabVIEW的函 數(shù)選板中,選擇:》信號(hào)處理》濾波器可以看到多種濾波器內(nèi)置VI,包括高級(jí)IIR濾波器和高級(jí)FIR濾波器供我們?cè)谠O(shè)計(jì)中使用,參見下圖。
我們通過一個(gè)濾波器的設(shè)計(jì)來介紹第一種方法,創(chuàng)建一個(gè)適合自己使用的子VI。
例2-2 理想濾波器
濾波器是信號(hào)處理中比較常用的部件,在實(shí)際工程應(yīng)用中也常常用到。一般情況下,我們可以選擇LabVIEW所提供的濾波器內(nèi)置VI。在LabVIEW的函 數(shù)選板中,選擇:》信號(hào)處理》濾波器可以看到多種濾波器內(nèi)置VI,包括高級(jí)IIR濾波器和高級(jí)FIR濾波器供我們?cè)谠O(shè)計(jì)中使用,參見下圖。
圖 2-14 LabVIEW所提供的濾波器內(nèi)置VI
我們?cè)陔妱?dòng)式振動(dòng)臺(tái)的測(cè)試項(xiàng)目中,需要準(zhǔn)確測(cè)試振動(dòng)加速度的峰值,可是在實(shí)際的加速度信號(hào)中往往包含許多諧波分量,從而導(dǎo)致無法準(zhǔn)確的測(cè)量出加速度的峰 值。為了解決這個(gè)問題,最好的辦法是就是對(duì)加速度信號(hào)進(jìn)行濾波處理。使用上述濾波器內(nèi)置VI可以實(shí)現(xiàn)濾波處理,但是我們擔(dān)心濾波后信號(hào)的幅度和相位是否會(huì) 發(fā)生改變。也就是說,濾波器的幅頻特性和相頻特性是否真正會(huì)令我們滿意。其實(shí),我們只是期待能夠提取加速度信號(hào)的基波分量,并不關(guān)心其它分量的信息。那么 有沒有這樣僅提取基波信號(hào)的方法呢?
通過對(duì)函數(shù)》信號(hào)處理》波形測(cè)量》中的諧波失真分析內(nèi)置VI的仔細(xì)分析,認(rèn)為這個(gè)內(nèi)置VI可以實(shí)現(xiàn)我們提取加速度信號(hào)的基波分量的要求。所以我們創(chuàng)建了這個(gè)子VI,并將其命名為:理想濾波器,參見下圖。
通過對(duì)函數(shù)》信號(hào)處理》波形測(cè)量》中的諧波失真分析內(nèi)置VI的仔細(xì)分析,認(rèn)為這個(gè)內(nèi)置VI可以實(shí)現(xiàn)我們提取加速度信號(hào)的基波分量的要求。所以我們創(chuàng)建了這個(gè)子VI,并將其命名為:理想濾波器,參見下圖。
圖 2-15 理想濾波器程序框圖
這個(gè)子VI是我們通過挖掘了諧波失真分析內(nèi)置VI中其它功能來實(shí)現(xiàn)的,也就是利用它可以導(dǎo)出信號(hào)中的其它信息這個(gè)特點(diǎn)實(shí)現(xiàn)了基波信號(hào)的提取。通過對(duì)導(dǎo)出信號(hào)項(xiàng)的設(shè)置,實(shí)現(xiàn)了對(duì)基波信號(hào)的提取。同時(shí)還可以獲得基波頻率和信號(hào)的失真度(%)。
之所以稱其為理想濾波器,就是因?yàn)樗哂袠O好的幅頻特性和相頻特性。在振動(dòng)加速度測(cè)試中已經(jīng)取得十分滿意的效果。
之所以稱其為理想濾波器,就是因?yàn)樗哂袠O好的幅頻特性和相頻特性。在振動(dòng)加速度測(cè)試中已經(jīng)取得十分滿意的效果。
2.5.2 創(chuàng)建子VI的圖標(biāo)和連線板
已經(jīng)創(chuàng)建完成的VI還不是子VI,因?yàn)槲覀冞€沒有為這個(gè)VI創(chuàng)建它的數(shù)據(jù)輸入輸出通道和圖標(biāo)。建立輸入輸出通道應(yīng)該是子VI最重要的特征之一,通過輸入輸出通道才可以實(shí)現(xiàn)子VI與其它VI間的數(shù)據(jù)交換。
圖標(biāo)是區(qū)分VI的標(biāo)志,圖標(biāo)的創(chuàng)建方法這里不具體說明,大家可以參照幫助文件來試著完成。圖標(biāo)和前面板,參見下圖。
圖標(biāo)是區(qū)分VI的標(biāo)志,圖標(biāo)的創(chuàng)建方法這里不具體說明,大家可以參照幫助文件來試著完成。圖標(biāo)和前面板,參見下圖。
圖 2-17 例2-2的前面板和圖標(biāo)
下面創(chuàng)建連線板,具體操作是:在前面板中,鼠標(biāo)單擊圖標(biāo)在彈出的快捷菜單中選擇顯示連線板,然后對(duì)應(yīng)將前面板中的控件與連線板一一對(duì)應(yīng)分配。參見下圖。
圖 2-18 例2-2的前面板和連線板
至此,子VI創(chuàng)建完成,保存后就可以供其它程序使用。對(duì)于常用的子VI建議存儲(chǔ)到用戶庫中,當(dāng)然別忘了為它創(chuàng)建簡要的說明文檔。
下面我們繼續(xù)通過VI的屬性來確定子VI的前面板外觀和運(yùn)行時(shí)的位置。
下面我們繼續(xù)通過VI的屬性來確定子VI的前面板外觀和運(yùn)行時(shí)的位置。
關(guān)鍵詞:
LabVIEWVI層次結(jié)
相關(guān)推薦
技術(shù)專區(qū)
- FPGA
- DSP
- MCU
- 示波器
- 步進(jìn)電機(jī)
- Zigbee
- LabVIEW
- Arduino
- RFID
- NFC
- STM32
- Protel
- GPS
- MSP430
- Multisim
- 濾波器
- CAN總線
- 開關(guān)電源
- 單片機(jī)
- PCB
- USB
- ARM
- CPLD
- 連接器
- MEMS
- CMOS
- MIPS
- EMC
- EDA
- ROM
- 陀螺儀
- VHDL
- 比較器
- Verilog
- 穩(wěn)壓電源
- RAM
- AVR
- 傳感器
- 可控硅
- IGBT
- 嵌入式開發(fā)
- 逆變器
- Quartus
- RS-232
- Cyclone
- 電位器
- 電機(jī)控制
- 藍(lán)牙
- PLC
- PWM
- 汽車電子
- 轉(zhuǎn)換器
- 電源管理
- 信號(hào)放大器
評(píng)論