新聞中心

EEPW首頁(yè) > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > Labview結(jié)構(gòu)的使用

Labview結(jié)構(gòu)的使用

作者: 時(shí)間:2017-01-05 來(lái)源:網(wǎng)絡(luò) 收藏

其中添加順序局部變量是為了在各個(gè)幀之間傳遞數(shù)據(jù)。

順序結(jié)構(gòu)的一個(gè)典型應(yīng)用就是計(jì)算程序運(yùn)行的時(shí)間,將通過(guò)這個(gè)例子來(lái)說(shuō)明順序結(jié)構(gòu)的用法。

  1. 新建一個(gè)VI,在前面板上放置一個(gè)數(shù)值輸入控件“給定數(shù)據(jù)”和兩個(gè)數(shù)值顯示控件“執(zhí)行次數(shù)”,“所需時(shí)間”。
  2. 在程序框圖上放置一個(gè)層疊式順序結(jié)構(gòu),右擊結(jié)構(gòu)邊框,在彈出的快捷菜單中執(zhí)行兩次“在后面添加幀”,創(chuàng)建幀1和幀2。
  3. 選取第0幀,記錄程序運(yùn)行初始時(shí)間。
  4. 右擊順序結(jié)構(gòu)框圖的邊框,在彈出的快捷菜單中執(zhí)行“添加順序局部變量”,這時(shí)在第0幀的下邊框出現(xiàn)一個(gè)黃色小方框,這就是順序局部變量,它可以在同一個(gè)順序結(jié)構(gòu)中的各幀之間傳遞數(shù)據(jù)。

    放置一個(gè)時(shí)間計(jì)數(shù)器到順序結(jié)構(gòu)內(nèi),它位于函數(shù)→編程→定時(shí)→時(shí)間計(jì)數(shù)器。返回毫秒定時(shí)器的值,用與計(jì)算占用的時(shí)間。用連線工具將它與順序局部變量相連,這時(shí)黃色小方框里會(huì)出現(xiàn)一個(gè)指向順序結(jié)構(gòu)外部的箭頭,數(shù)值可用后續(xù)幀使用,如圖:

  5. 選取第1幀,實(shí)現(xiàn)等于給定值的匹配運(yùn)算。程序如圖:
  6. 選取第2幀,同樣放置一個(gè)時(shí)間計(jì)數(shù)器函數(shù)用于返回當(dāng)前時(shí)間,將它減去順序局部變量傳遞過(guò)來(lái)的第一幀初始時(shí)間后就可以得到花費(fèi)的時(shí)間,如圖:

運(yùn)行,結(jié)果如圖:

注意:Labview編程的主要特點(diǎn)是數(shù)據(jù)流形式,這便于VI大量的按照并行方式運(yùn)行,優(yōu)化了程序的計(jì)算性能。而順序結(jié)構(gòu)卻趨向于中斷數(shù)據(jù)流編程,禁止程序并行操作,順序結(jié)構(gòu)還掩蓋了部分代碼,所以用戶在編程時(shí)應(yīng)盡量不用或少用順序結(jié)構(gòu)。

在實(shí)際應(yīng)用中,經(jīng)常用人為的數(shù)據(jù)依從關(guān)系來(lái)確定程序先后執(zhí)行的順序,在前面簇的章節(jié)中,我們就提到過(guò)Error簇可以控制程序執(zhí)行的先后順序,但并不是每一個(gè)控件都有Error簇的輸入和輸出端口,這時(shí)還有另一種方法能實(shí)現(xiàn)順序執(zhí)行的功能。如圖:

從第一個(gè)While循環(huán)結(jié)構(gòu)中的布爾開(kāi)關(guān)上連了一根線到第二個(gè)While循環(huán)結(jié)構(gòu)的邊框上,可以看到,第二個(gè)While循環(huán)結(jié)構(gòu)中沒(méi)有一個(gè)對(duì)象需要這個(gè)數(shù)據(jù),只是起到順序執(zhí)行程序的目的。

公式節(jié)點(diǎn)

用戶可以在程序框圖的兩個(gè)位置找到公式節(jié)點(diǎn)結(jié)構(gòu),一個(gè)位于函數(shù)→Express→算術(shù)與比較→公式;另一個(gè)位于函數(shù)→編程→結(jié)構(gòu)→公式節(jié)點(diǎn)。如圖:

第一種公式節(jié)點(diǎn)的使用比較方便,如圖:

當(dāng)把第一種公式節(jié)點(diǎn)放置到程序框圖上時(shí),系統(tǒng)便會(huì)自動(dòng)彈出如上圖所示的對(duì)話框,它的操作比較簡(jiǎn)單,當(dāng)上述對(duì)話框右上方的方塊顯示為綠色時(shí),則表明系統(tǒng)識(shí)別輸入的函數(shù),當(dāng)出現(xiàn)非法函數(shù)時(shí),則表明系統(tǒng)不識(shí)別。如圖:

它的使用雖然方便,但消耗的系統(tǒng)資源較多,下面我們將重點(diǎn)介紹第二種公式節(jié)點(diǎn)的使用方法。

如圖:創(chuàng)建一個(gè)公式節(jié)點(diǎn)到程序框圖,在邊框上單擊右鍵

選擇添加,然后即可在節(jié)點(diǎn)框中輸入變量名稱(chēng),如圖:

公式節(jié)點(diǎn)中的函數(shù)和操作符與C語(yǔ)言中的基本相符,遇到特殊函數(shù)時(shí)查表即可。

應(yīng)用舉例:

例一:該例的目的事聯(lián)系使用條件表達(dá)式來(lái)執(zhí)行不同條件時(shí)的數(shù)據(jù)傳輸。

下面的代碼表示:如果X為非負(fù)數(shù),Y等于X的平方根;如果X為負(fù)數(shù),Y等于-999。

if(x>=0)then y=sqrt(x)

else y=-999

end if

對(duì)這段代碼可以用公式節(jié)點(diǎn)來(lái)計(jì)算,需要注意大小寫(xiě),如圖所示:

運(yùn)行結(jié)果如圖:

例二:該例的目的是聯(lián)系使用公式節(jié)點(diǎn)來(lái)計(jì)算兩個(gè)輸出x1和x2,并在同一圖表中顯示。



關(guān)鍵詞: Labview結(jié)

評(píng)論


技術(shù)專(zhuān)區(qū)

關(guān)閉