新聞中心

EEPW首頁 > 測試測量 > 設計應用 > labview編程技巧-----令人無奈的IF ELSE

labview編程技巧-----令人無奈的IF ELSE

作者: 時間:2017-01-09 來源:網(wǎng)絡 收藏
LABVIEW作為一種編程語言,相對于常規(guī)編程語言,有其獨特的編程風格.

編程語言都具有順序,條件轉移和循環(huán)三種基本結構.LV的IF ELSE常常令人很無奈.

if(condition1)
........
else if (condition2)

........
else if (condition3)

類似與上面的條件結構在其他編程語言中很容易實現(xiàn),在LV中卻是個問題.

1.如果超過三層IF ELSE判斷,LV中則很難讀懂代碼,嵌套太多了
2.LV的IF結構必須通過隧道傳遞數(shù)值,即使這個值有時是根本不需要的.

比如:
if (a==1)
b=2;
else
c=3;

當變量a=1時,令變量b=2,當變量a!=1時,令C=2
但是在LV中,當變量a=1時,在令變量b=2的同時,還必須處理C,而此時我們根本不想對C進行任何操作.同理,當a!=1時,我們也不得不處理b的問題.


有網(wǎng)友提問:
Hi
I like to do the following statements in LabVIEW,
IF AoValue<=0.1 THEN
AoValue1=(AoValue-0.0060)
ELSEIF (AoValue >0.1) AND (AoValue<0.2) THEN
AoValue1=(AoValue-0.0035)
ENDIF
Pls help with this
Thanks

網(wǎng)友答案:


這是個兩層的IF ELSE結構,如果數(shù)據(jù)分成10段那,那上面的判斷結構將無法實現(xiàn)了.(另外,他的AOVALUE應該是個輸入控件)

比較好的解決方法:



如果是數(shù)值類比較,更好的方法是利用公式節(jié)點.


評論


技術專區(qū)

關閉