细讲Labview条件结构用法及易错点

本文讲解Labview条件结构的常用情景及易错点注意事项。帮助大家深刻理解并使用该结构,欢迎点赞关注加评论,有问题可以私聊或在下方评论区留言。
本文程序均附在文章结尾,可自行下载学习。

博主之前讲过Labview事件结构、For循环等的基础知识介绍,有兴趣强化基础的小伙伴可以直接去博主主页查看哈~~
事件结构入门:事件结构基础入门讲解
For循环入门:For循环入门教程讲解

废话不多说,我们开始本期的Labview条件结构的讲解。本文章将首先从理论上讲解该结构,帮助大家明确该结构的定义、用法及数据流结构;其次从实践上讲解该结构,根据几种不同的。
以下是本文的目录:

本文目录

  • 一、从根本上了解Labview条件结构 (理论)
    • 1.1 条件结构的定义
    • 1.2 条件结构的类型及分支易错点
      • 1.2.1 条件结构选择器的类型
      • 1.2.2 条件结构分支易错点
  • 二、条件结构实例场景讲解 (实践)
    • 2.1 面向用户的界面跳转功能
    • 2.2 与条件结构相关的状态机框架

一、从根本上了解Labview条件结构 (理论)

根据以往我们认识程序的思路来看,我们本章将从一下几个方面来详细讲解Labview条件结构,分别从Labview条件结构的定义、条件结构的分类、数据流方向几个方向对事件结构做出讲解。

1.1 条件结构的定义

还是首先看一下Labview对该结构的定义,其中我们可以看到,这些词语中的重点应该是:选择器的值对应分支。我们该怎么去理解这句话呢,在前面关于事件结构中我曾介绍过什么是“分支”(事件结构的文章链接在本文开头),这里的分支和事件结构中的分支是相同的,我们把结构看作一本书,分支相当于书的某一页,我翻到哪一页就执行哪一页的程序
在这里插入图片描述
条件结构的组成部分如下图所示,主要由①②③④四部分组成,其中输入控件①的值和分支名称③是对应的。
在这里插入图片描述

常见问题答疑:
1. 如何确定我翻到哪一分支页呢,其实来自于上图①“选择器”,那么问题来了,选择器是什么呢?
:“选择器”我们可以理解为是,某一个控件或者常量,这个控件或常量有多个可以输出的值,前提这个控件或常量是输入控件或常量。最常见的选择器是布尔控件,它可以输出两个值,真或假,还有枚举量也是选择器。

如下图所示:
在这里插入图片描述
在这里插入图片描述
我们进入条件结构前首先在左侧绿色问号前获取到当前控件的值,如果是真值,就跳到真分支,如果是假值,就跳到假分支

2.条件分支中的默认是什么用处?
答:条件分支中的默认是指,当选择器中输入的值没有对应分支时,比如上图条件结构中,输入的值除了真假之外,输入了一个数值“1”,此时条件结构的分支中,没有对应名为“1”的分支。此时条件结构就默认执行“默认”分支中的程序。
同时,默认分支可以独立占一个分支,也可以依附于其他分支页存在。

1.2 条件结构的类型及分支易错点

准确的是讲解条件结构选择器的几种情况并列举在创建条件结构分支名称时最容易出现的错误,避免大家在使用该结构时犯错误。

1.2.1 条件结构选择器的类型

类型一布尔量选择器
这个选择器在1.1中已经介绍过了,用法是将布尔量输入控件或常量的真值或者假值作为选择器的值,那么条件结构的分支只有两页,就是真和假两页,仅有这一种情况。

类型二枚举量选择器
这个选择器的分支页就比较灵活了,因为枚举量的值是我们可以自由定义的,所以分支页的页数最多是可以和枚举量相等的,为帮助大家理解,题主建立了一个枚举常量,右键“编辑项”,在选项中增加了三个项,建立了该枚举常量。
在这里插入图片描述
将枚举量连接到条件结构的分支选择器中,并右键分支选择器点击“在后面添加分支”,建立和枚举量相同的分支数量。此时枚举量的某一项输入到条件结构中时,条件结构就跳到该分支。
在这里插入图片描述
类型三开放型选择器

数值或者字符串等的控件直接输入到选择器中,一般这种选择器的分支是很灵活的,因为数值控件和字符串控件的项有很多,可以自由赋值。但需要注意,该结构是必须需要设置默认分支值的,而前两种类型在分支和选择器匹配的情况下是不需要设置默认分支的。
对于第三种类型的开放型选择器,这种类型的选择器一般均需要设置默认分支才不会发生报错等反应。
在这里插入图片描述

1.2.2 条件结构分支易错点

本节列举条件结构在编程过程中常见的易错点:
使用条件结构时,在多条件情况下,没有设置默认分支。导致程序报错
在使用条件选择时,往往容易忽略数据流的方向,条件结构只执行一次被选择的分支内部的程序,如果需要跳转界面时,请在条件结构外部增加一个While循环,向条件选择器一直询问条件的状态,如果条件状态发生改变,条件结构也会切换到对应的分支执行程序。
在这里插入图片描述
条件结构输出值时,如果没有要输出的值时,可以右键点击隧道单击 “未连线时使用默认”,此时,不接线时,在该分支使用默认值,如:当输出量为布尔量时默认为F值、输出为数值时为0等。
在这里插入图片描述

二、条件结构实例场景讲解 (实践)

题主在本章列举了条件结构几种常用的场景及示例程序,大部分相关程序可直接借鉴该程序中的条件结构框架开发程序。

2.1 面向用户的界面跳转功能

顾名思义,我们在使用labview进行GUI界面编程时,由于该开发框架具有时效性高、拿取数据快等特点,多数编程是面向用户操作的GUI界面编程,那么当用户需要切换执行不同的分页时,就类似于我们在看一本书时,来回翻页反复查看不同页码中的重点。可以基于以下的框架编程,那么基础就需要一个while循环套条件结构的框架啦~
在这里插入图片描述
题主将四个分支内部执行的内容整理出来并将,具体框架程序贴在下面:

在这里插入图片描述
前面板如下图所示:
在这里插入图片描述
当程序运行时,自动默认为“待机状态”,经枚举量选择后,执行对应分支的程序,如选择“退出程序”时,条件结构向while循环输出一个T,终止程序。

文章末尾附该程序源代码

2.2 与条件结构相关的状态机框架

本文介绍一种基于该结构的状态机框架,可以查看Labview自带的范例来了解该逻辑框架的使用环境,在Labview中点击:帮助 — 查找范例 — 输入关键词:状态机 — 搜索–打开:状态机基础,该范例介绍的较为清晰,可以从范例中了解该状态机的基础时如何使用的。
在这里插入图片描述
状态机的特点可以总结为以下几个方面:

必须包含一个while循环、一个条件结构、移位寄存器、枚举量这四个条件同时具备。
在当前条件分支执行完毕前,将新的条件值输入给右侧的移位寄存器。用于切换新的分支。
分支跳转应该形成闭环,不能存在卡死的情况。

本节对状态机做了简单的介绍,由于状态机是比较重要的一部分,题主打算在后续专门开一节状态机相关的文章,详细介绍状态机的应用场景。本章就先到这里。

针对不同状态的条件结构的使用情况,请同学们灵活掌握,熟练使用不同状态下的条件结构,明确该结构的利弊,才能举一反三,编程时灵活使用。

本章有关于条件结构的文章就介绍到这里,后续相关强化及进阶文章,请关注题主并点赞文章,后续有更多干货分享,谢谢观看拜~

本文程序相关请点击下方链接下载:
链接:直接点击下载本文条件结构源程序
提取码:6666

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/636186.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第十四章 MyBatis

第十四章 MyBatis 1.入门-课程介绍2.入门-快速入门程序3.配置SQL提示4.入门-JDBC5.入门-数据库连接池6.入门-lombok工具包介绍7.基础操作-环境准备8.基础操作-删除9.基础操作-删除(预编译SQL)10.基础操作-新增11.基础操作-新增(主键返回&…

Python初识——小小爬虫

一、找到网页端url 打开浏览器,打开百度官方网页点击图片,打开百度图片 鼠标齿轮向下滑,点击宠物图片 进入宠物图片网页,在网页空白处点击鼠标右键,弹出的框中最下方显示“检查”选项,点击(我是…

安全帽识别-赋能深圳自贸中心智慧工地

在当今的建筑行业中,安全管理一直是一个至关重要的议题。深圳自贸中心项目在这方面进行了一次有益的尝试——实施智慧工地安全帽识别系统。本文将对这一创新举措进行简要介绍。 项目背景 深圳自贸中心,作为一项标志性建设项目,承载着城市发展…

怎么用小程序将身份证转为结构化Excel?

随着科技的不断发展,我们的生活变得越来越智能化。现在,我们可以使用金鸣表格文字识别小程序来识别身份证并转为结构化的excel,并且可自动核对真伪,保留头像。金鸣表格文字识别小程序是一种基于人工智能技术的应用程序&#xff0c…

将字符串中的制表符替换为指定数量的空格expandtabs()

【小白从小学Python、C、Java】 【计算机等考500强证书考研】 【Python-数据分析】 将字符串中的制表符 替换为指定数量的空格 expandtabs() [太阳]选择题 请问以下代码text3的空白处是? text1 "这里有一个\t制表符" text2 "这里有一个12345制表符…

第二次作业+第三次作业

第二次作业第三次作业 第二次作业 题目: 网站需求: ​ 1.基于域名[www.openlab.com](http://www.openlab.com)可以访问网站内容为 welcome to openlab!!! 2.给该公司创建三个子界面分别显示学生信息,教学资料和缴费网站,基于[ww…

利用HTML+CSS+JS打造炫酷时钟网页的完整指南

引言 在现代Web开发中,制作一个引人注目的时钟网页是一种常见而令人愉悦的体验。本文将介绍如何使用HTML、CSS和JavaScript来创建一个炫酷的时钟网页,通过这个项目,你将学到如何结合这三种前端技术,制作一个动态且美观的时钟效果…

深入探索 Android 中的 Runtime

深入探索 Android 中的 Runtime 一、什么是 Runtime二、Android 中的 Runtime 类型2.1. Dalvik Runtime2.2. ART(Android Runtime) 三、Runtime 的作用和特点3.1. 应用程序执行环境3.2. 跨平台支持3.3. 性能优化3.4. 应用程序优化 四、与应用开发相关的重…

Unity3D Pico VR 手势识别物体交互 适配 MRTK3

当前Pico已经支持手势识别了,但是提供的PICO Unity Integration SDK 中是没有手势和物体交互的功能,Unity XR Interaction Toolkit提供的手势识别物体交互对 Quest适配的挺好的,Pico 当前只能用指尖点触还不能对物体进行抓握以及手势控制射线…

JS-WebAPIs-其他事件(三)

• 页面加载事件 页面加载事件主要有二种事件,分别是load和DOMContentLoaded 加载外部资源(如图片、外联CSS和JavaScript等)加载完毕时触发的事件为什么要学? 有些时候需要等页面资源全部处理完了做一些事情老代码喜欢把 scrip…

Hadoop详解

Hadoop 概念 就是一个大数据解决方案。它提供了一套分布式系统基础架构。 核心内容包含 hdfs 和mapreduce。hadoop2.0 以后引入 yarn. hdfs 是提供数据存储的,mapreduce 是方便数据计算的。 hdfs 又对应 namenode 和 datanode. namenode 负责保存元数据的基本信息…

YZ系列工具之YZ04:文本批量替换使用说明文档

我给VBA下的定义:VBA是个人小型自动化处理的有效工具。利用好了,可以大大提高自己的工作效率,而且可以提高数据的准确度。我的教程一共九套一部VBA手册,教程分为初级、中级、高级三大部分。是对VBA的系统讲解,从简单的…

解锁新身份:无忧秘书智脑-AI智能直播的10宫格姓氏头像制作秘籍

在这个信息爆炸的时代,一个独特的标识是个人或品牌在众多竞争者中脱颖而出的关键。而头像作为我们日常在线身份的一部分,更是我们展示个性和风格的重要窗口。无忧秘书智脑-AI智能直播最新推出的专属姓氏10宫格头像功能(ai6ai69),为…

【Python学习】Python学习21- 正则表达式(2)

目录 【Python学习】Python学习21- 正则表达式(2) 前言字符串检索和替换repl 参数是一个函数参考 文章所属专区 Python学习 前言 本章节主要说明Python的正则表达式。 正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与…

MySQL缓冲池(Buffer Pool)深入解析:原理、组成及其在数据操作中的核心作用

在关系型数据库管理系统(RDBMS)中,性能优化一直是数据库管理员和开发者关注的焦点。作为最流行的开源RDBMS之一,MySQL提供了多种优化手段,其中InnoDB存储引擎的缓冲池(Buffer Pool)是最为关键的…

小埋公司的IPO方案的题解

目录 原题描述: 题目描述 输入格式 输出格式 输出格式 样例 #1 样例输入 #1 样例输出 #1 样例 #2 样例输入 #2 样例输出 #2 提示 题目大意: 主要思路: 但是but 代码code: 时间限制: 500ms 空间限制: 65536kB 原题…

pytest 参数化测试用例构建

在之前的文章中主要分享了 pytest 的实用特性,接下来讲 Pytest 参数化用例的构建。 如果待测试的输入与输出是一组数据,可以把测试数据组织起来用不同的测试数据调用相同的测试方法。参数化顾名思义就是把不同的参数,写到一个集合里&#xf…

Apipost智能Mock教程

在接口开发过程中,Mock功能可以帮助开发者快速测试和验证接口的正确性和稳定性,以便快速迭代和修复问题。Apipost推出智能Mock功能,可以在智能期望中填写一些触发条件,开启后,Apipost会根据已设置的触发条件&#xff0…

大创项目推荐 疫情数据分析与3D可视化 - python 大数据

文章目录 0 前言1 课题背景2 实现效果3 设计原理4 部分代码5 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 大数据全国疫情数据分析与3D可视化 该项目较为新颖,适合作为竞赛课题方向,学长非常推荐&#xff0…

力扣70. 爬楼梯(动态规划 Java,C++解法)

Problem: 70. 爬楼梯 文章目录 题目描述思路解题方法复杂度Code 题目描述 思路 由于本题目中第i层台阶只能由于第i- 1层台阶和第i-2层台阶走来,所以可以联想到动态规划,具体如下: 1.定义多阶段决策模型:对于每一上台阶看作一种状…