labview编程技巧-----令人无奈的IF ELSE
扫描二维码
随时随地手机看文章
LABVIEW作为一种编程语言,相对于常规编程语言,有其独特的编程风格.
编程语言都具有顺序,条件转移和循环三种基本结构.LV的IF ELSE常常令人很无奈.
if(condition1)
........
else if (condition2)
........
else if (condition3)
类似与上面的条件结构在其他编程语言中很容易实现,在LV中却是个问题.
1.如果超过三层IF ELSE判断,LV中则很难读懂代码,嵌套太多了
2.LV的IF结构必须通过隧道传递数值,即使这个值有时是根本不需要的.
比如:
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的问题.
有网友提问:
HiI 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) THENAoValue1=(AoValue-0.0035)
ENDIFPls help with thisThanks
网友答案:
这是个两层的IF ELSE结构,如果数据分成10段那,那上面的判断结构将无法实现了.(另外,他的AOVALUE应该是个输入控件)
比较好的解决方法:
如果是数值类比较,更好的方法是利用公式节点.