虚拟仪器_labview_课件PPT_5
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第五章 结构与属性控制
Stacked Sequence Structure的创建,在 Function →Programming→Structure下
→
第五章 结构与属性控制
Flat Sequence Structuwenku.baidu.come的创建
→
第五章 结构与属性控制
5.3.1 顺序结构的组成
1. Stacked Sequence Structure
第五章 结构与属性控制
Flat Sequence Structure顺序结构不能添加
局部变量(Sequence Local),因为每个帧都是 可见的,不需要局部变量这种机制在帧之间传递 数据。平铺结构可以转换为堆叠结构。
→
第五章 结构与属性控制
5.3.2 顺序结构的使用
例5.3.1 用For循环产生一个2000点的随机波 形,并计算所用时间.
第五章 结构与属性控制
5.4.2 Case结构的使用
例5.4.1 求一个数的平方根,若该数>=0,输出开方结 果;否则弹出对话框,报告错误,同时输出-99999.00.
第五章 结构与属性控制
5.4.3 Case结构的特点
1.LabVIEW的Case结构简洁明了,不但相当于 Switch语句,还可以实现if else语句功能。 2.Case框架中也存在框架隧道,但隧道没有 Enable Indexing和Disenable Indexing属性。 3.每个子框架必须连接一个数据,否则程序出 错。
第五章 结构与属性控制
第五章 结构与属性控制
5.1 For循环(重点)
5.2 While循环(重点)
5.3 顺序结构(重点) 5.4 选择结构(重点) 5.5 事件结构 5.6 公式节点 5.7 定时循环结 构 5.8 属性节点(重点)
第五章 结构与属性控制
5.1 For 循环
For循环是LabVIEW最基本的结构之一,它执行 指定次数的循环。相当于C语言的For循环: for(int i=0;i<N;i++) { } LabVIEW中For循环可从框图功能模板Function →Programming→Structure子模板中创建。
由:顺序框架(也称为帧,Frame)、框图标 识符和递增/递减按钮构成。如下图:
第五章 结构与属性控制
Stacked Sequence Structure帧序号从0
开始。
Stacked Sequence Structure中引入了局
部变量(Sequence Local)的概念,通过局部变 量就可以在顺序框架中向后传递数据 顺序框架中也存在框架隧道,但隧道没有 Enable Indexing和Disenable Indexing属性
→
第五章 结构与属性控制
5.4.1 Case结构的组成 最基本的Case结构由:Case框架、选择端口、框 图标识符和递增/递减按钮构成。
第五章 结构与属性控制
上图中选择端口相当于C语言的Switch语句中的 “表达式”,选择标识符相当于“表达式n”。 选择端口的外部控制条件的数据类型有3种:布尔 型、数字型和字符串型。 控制条件的数据类型必须与选择标识符中数据类 型一致。 1.控制条件为布尔类型,选择标识符取值True和 False; 2.控制条件为数字类型,选择标识符取值0,1, 2,…; 3.控制条件为字符串类型,选择标识符取值“条 件n”;
第五章 结构与属性控制
5.6 公式节点
假如程序中有一些复杂的数学计算,编写图形 代码是比较麻烦的。如x>0,y=mx3+3nx2-x+1; x<=0,y=-2mx3+x-5。
第五章 结构与属性控制
第五章 结构与属性控制
5.6.1 公式节点的创建 ① 在功能模板 Function→ Programming → Structure子模板中选择Formula Node。
第五章 结构与属性控制
→
第五章 结构与属性控制
5.1.1 For 循环的组成
最基本的For循环由:循环框架、迭代端口i和 总计数端口构成。 此外,LabVIEW在For循环中引入移位寄存器 (Shift Register)和框架隧道(Loop Tunnel) 两个独具特色的新概念。
→
第五章 结构与属性控制
第五章 结构与属性控制
右击顺序框架,在弹出对话框中可增加删除帧。
第五章 结构与属性控制
2. Flat Sequence Structure
与Stacked Sequence Structure结构具有相同 的功能,区别仅在于表现形式不一样。 堆叠结构相对平铺结构,比较节省空间。平铺 结构在帧数不多时,把每个帧平铺开来,比较直 观,便于代码阅读。平铺结构如下图:
第五章 结构与属性控制
5.2.2 While循环的使用
例5.2.1 求N!.
第五章 结构与属性控制
5.2.3 While循环的特点
1. 具有自动索引功能 例:显示一维数组所有元素。
2. 停止条件可修改,避免死循环。
第五章 结构与属性控制
5.3 顺序结构
在代码式的传统编程语言中,默认的情况是, 程序语句按照排列顺序执行,称为控制流程;但 LabVIEW中不同,它是一种图形化的数据流式编程 语言,具有并发、多任务的特点。 在LabVIEW7.0 以前只有一种顺序结构。从 LabVIEW7.0开始,旧版本的顺序结构称为Stacked Sequence Structure(堆叠顺序结构),同时引入新 的Flat Sequence Structure(平铺顺序结构)。
第五章 结构与属性控制
用输入端口配置输入端子:
第五章 结构与属性控制
例5.5.1:事件结构的使用。当按钮或滑钮按下时产生 Mouse Down事件,执行0帧代码,弹出对话框,询问是否 继续?点击Yes,继续While循环,点击No结束While循环。 此外设置一个超时处理事件,假如5秒没有在前面板操作, 则退出While循环。
第五章 结构与属性控制
第五章 结构与属性控制
5.5 事件结构
5.5.1 事件驱动的概念 LabVIEW是一种数据流的编程环境,由数据流 决定程序中节点的执行顺序。但在编程中可以设 置事件,对数据流进行干预。这些事件是用户在 前面板的互动操作,如:点击鼠标事件、键盘事 件等。 在事件驱动程序中,首先是等待事件,当事件 发生时执行指定事件的程序代码,对事件进行响 应,然后再回到等待状态。 使用事件设置,当用户改变一个前面板的值、 关闭前面板、退出程序等,都可以被程序及时捕 捉到。
5.7.1定时循环的创建
在功能模板 Function→ Programming → Structure子模板中选择Timed Structure下的 Timed Loop。
第五章 结构与属性控制
输入端子
左数据端子
右数据端子
输出端子
第五章 结构与属性控制
用Configure Timed Loop(双击输入端子)配 置输入端子:
第五章 结构与属性控制
当For循环计数端口给定值与两数组长度不等 时,For循环自动按最小循环次数执行。
第五章 结构与属性控制
5.2 While 循环
当循环次数不能预先确定时,就需要用到While 循环。它也是LabVIEW最基本的结构之一。相当于C 语言的While循环和do循环: While(条件) { } Do { } LabVIEW中While循环可从框图功能模板Function → Programming→Structure子模板中创建。
第五章 结构与属性控制
5.5.2 事件结构的建立 LabVIEW中Event结构可从框图功能模板 Function→Structure子模板中创建,如下。
超时端口Timeout连接一个数值指定等待事件的毫秒 数。默认值为-1,即无限等待。 通过事件端口可以访问事件的数据值。 事件选择标签显示当前响应事件的子图形代码框。
第五章 结构与属性控制
第五章 结构与属性控制
5.3.3 顺序结构的特点
1.LabVIEW在堆叠顺序框架中引入了局部变量 (Sequence Local)的概念,通过本地结果就可以在 顺序框架中向后传递数据。 2.顺序框架中也存在框架隧道,但隧道没有Enable Indexing和Disenable Indexing属性。 3.NI提供了顺序结构,却不提倡过多使用。因为: ● 顺序结构妨碍了LabVIEW的优点之一的并行运行机 制; ● 顺序结构掩盖了部分程序代码,中断了作为 LabVIEW特点的数据流形式。
数据在移位寄存器中的流动过程:
第五章 结构与属性控制
移位寄存器的特点: (1)移位寄存器(左右)是For循环的数 据缓冲区。 (2)可以增加和减少移位寄存器的个数。 (3)左右两侧移位寄存器的数据类型必须 一致。
第五章 结构与属性控制
框架隧道: 框架隧道是For循环与循环外部进行数据交换的数 据隧道。 其功能:(1)在循环开始前,将循环外的数据送至 循环内;(2)在循环结束后将循环结果送至结构外。 框架隧道的属性:有索引(Enable Indexing)和 无索引(Disenable Indexing)。 (1)当框架属性为Enable Indexing时,该框架隧 道就是一个数据缓存,每次循环结果在隧道内按先后 次序组成一个数组,循环结束时,一次将合成的数组 送出。 (2)当框架属性为Disenable Indexing时,该框架 隧道最后一次循环送过来的数据,并在循环结束时将 该数据送出。
第五章 结构与属性控制
框架隧道属性用框架隧道右键菜单设置。
第五章 结构与属性控制
5.1.2 For 循环的使用
例5.1.1 求N!.
例5.1.2 求0到99之间所有偶数的和.
第五章 结构与属性控制
5.1.3 For 循环的特点
1. 一旦For循环开始执行,就必须执行完相应次数循 环后才能终止,不可中途跳转出来。 2. 具有自动索引功能 例:求一维数组所有元素的和。
第五章 结构与属性控制
5.4 Case 结构
Case结构也是LabVIEW最基本的结构之一。相 当于C语言的switch语句: switch(表达式) { case 1:语句1; case 2:语句2;
case n:语句n; default:语句n+1;
}
第五章 结构与属性控制
LabVIEW中Case循环可从框图功能模板Function →Programming→Structure子模板中创建。
第五章 结构与属性控制
5.5.3 事件结构的设置 在事件结构边框右键弹出菜单上选择Case Event Case添加事件子图形代码框。 点击事件数据节点可以选择、添加、删除事件 节点。
第五章 结构与属性控制
在Edit Events Handled by This Case设置代码框 设置事件源和事 件类型。
第五章 结构与属性控制
→
第五章 结构与属性控制
5.2.1 While循环的组成
最基本的While循环由:循环框架、迭代端口i 和条件端口构成。 条件端口控制循环是否执行,每次循环结束后, 判断条件端口的值,若为False,停止执行循环; 若为True,则继续执行下一次循环。不给条件端 口赋值,则While循环只执行一次。 此外,LabVIEW在While循环中也可引入移位寄 存器(Shift Register)和框架隧道(Loop Tunnel),与For循环中用法完全相同。
第五章 结构与属性控制
5.6.3 公式节点的特点
1.LabVIEW的公式节点的使用简化计算公式的 图形化编程,提高了效率。 2.公式节点框架中出现的所有变量,必须有一 个对应的输入输出端口,注意输入输出端口是可 设置的。 3.公式节点框架内每个公式后以分号”;”结 束。
第五章 结构与属性控制
5.7 定时循环结构
→
第五章 结构与属性控制
② 添加输入输出端口。
→
→
第五章 结构与属性控制
③ 公式节点的预定义函数。
第五章 结构与属性控制
第五章 结构与属性控制
④ 公式节点的操作符。
第五章 结构与属性控制
5.6.2 公式节点的使用
例5.6.1 求y=3x+100
第五章 结构与属性控制
例5.6.2 如x>0,y=mx3+3nx2-x+1; x<=0,y=-2mx3+x-5。 应用选择结构<逻辑表达式>?<表达式1>:<表达式2>;