石鑫华视觉论坛

 找回密码
 注册会员
查看: 3565|回复: 0

[转载] 陈树学:labview编程技巧-----令人无奈的IF ELSE

[复制链接]
  • TA的每日心情
    慵懒
    昨天 10:09
  • 签到天数: 3411 天

    连续签到: 13 天

    [LV.Master]2000FPS

    发表于 2014-11-2 19:26:08 | 显示全部楼层 |阅读模式 来自:广东省东莞市 移动

    注册登陆后可查看附件和大图,以及购买相关内容

    您需要 登录 才可以下载或查看,没有账号?注册会员

    x
    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=3

    但是在LV中,当变量a=1时,在令变量b=2的同时,还必须处理C,而此时我们根本不想对C进行任何操作.同理,当a!=1时,我们也不得不处理b的问题.



    有网友提问:

    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


    网友答案:

    陈树学:labview编程技巧-----令人无奈的IF ELSE

    陈树学:labview编程技巧-----令人无奈的IF ELSE


    这是个两层的IF ELSE结构,如果数据分成10段那,那上面的判断结构将无法实现了.(另外,他的AOVALUE应该是个输入控件)


    比较好的解决方法:

    陈树学:labview编程技巧-----令人无奈的IF ELSE

    陈树学:labview编程技巧-----令人无奈的IF ELSE



    如果是数值类比较,更好的方法是利用公式节点.

    陈树学:labview编程技巧-----令人无奈的IF ELSE

    陈树学:labview编程技巧-----令人无奈的IF ELSE
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册会员

    本版积分规则

    LabVIEW HALCON图像处理入门教程(24.09)
    石鑫华机器视觉与LabVIEW Vision图像处理PDF+视频教程11种全套
    《LabVIEW Vision函数实例详解2020-2024》教程-NI Vision所有函数使用方法介绍,基于NI VISION2020,兼容VDM21/22/23/24

    QQ|石鑫华视觉论坛 |网站地图

    GMT+8, 2024-12-22 11:13

    Powered by Discuz! X3.4

    © 2001-2024 Discuz! Team.

    快速回复 返回顶部 返回列表