新聞中心

EEPW首頁 > 測試測量 > 設計應用 > Labview結構的使用

Labview結構的使用

作者: 時間:2017-01-05 來源:網絡 收藏

其中添加順序局部變量是為了在各個幀之間傳遞數據。

順序結構的一個典型應用就是計算程序運行的時間,將通過這個例子來說明順序結構的用法。

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

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

  5. 選取第1幀,實現等于給定值的匹配運算。程序如圖:
  6. 選取第2幀,同樣放置一個時間計數器函數用于返回當前時間,將它減去順序局部變量傳遞過來的第一幀初始時間后就可以得到花費的時間,如圖:

運行,結果如圖:

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

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

從第一個While循環(huán)結構中的布爾開關上連了一根線到第二個While循環(huán)結構的邊框上,可以看到,第二個While循環(huán)結構中沒有一個對象需要這個數據,只是起到順序執(zhí)行程序的目的。

公式節(jié)點

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

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

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

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

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

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

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

應用舉例:

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

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

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

else y=-999

end if

對這段代碼可以用公式節(jié)點來計算,需要注意大小寫,如圖所示:

運行結果如圖:

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



關鍵詞: Labview結

評論


技術專區(qū)

關閉