版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、计算机仿真和可视化设计,基于LabVIEW的工程软件应用,蔡建安 陈洁华 张文艺,目录,1LABVIEW概述 2LABVIEW模板简介 3创建VI程序 4LABVIEW结构 5LABVIEW 数据类型 6图表及图形 7字符串和文件I/O 8数据采集 9工程仿真和设计常用编程技法 10虚拟设备实例水环境工程仿真软件 11附录,LABVIEW结构,4.1While Loop循环 4.2For Loop 循环 4.3移位寄存器 4.4Case结构 4.5顺序结构 4.6结构连线中的常见问题 4.7公式节点 4.8局部变量和全局变量,学习指导,LabVIEW 有四种结构控制程序流程:While Loo
2、p循环,For Loop循环,Case结构和Sequence结构。公式节点、局部和全局变量等特殊结构对简化程序和传递数据有重要意义。,学习要点,While循环的执行是根据条件端子上输入的布尔值是 TRUE或 FALSE确定的,用布尔开关人工控制时需了解对应的机械操作模式;For循环将子框图执行N次,N为计数端的输入值; 在For 或 While Loop循环中,应掌握移位寄存器的用法; Case结构是执行条件语句的一种方法,能代替常规语言的 IFThenElse和多项选择语句,需要关注Case下多选子框图标识符的用法; 顺序结构为控制节点按顺序执行的方法。该结构只有数据相关性不足以控制数据流,
3、而又必需强调执行顺序时才使用;,学习要点,解决结构连线问题往往是结构编程的关键,特别要掌握结构下数据隧道的正确使用; 公式节点是种允许用文本语言编写一个或多个代数公式的结构。在公式节点上建立输入和输出端子后,用公式节点支持的运算符和函数写出以分号结尾的语句; 局部变量用于程序中控制初始化、协调控制功能、临时保存数据和传递数据。全局变量可在不同VI之间交换数据。,4.1While Loop循环,While循环有两个端子:条件端子(输入端子)和重复端子(输出端子)。重复端子的作用是输出循环已执行次数的数字。条件端子输入的是布尔值 TRUE 或 FALSE。在每一次重复执行后, 检查条件端子,如果条
4、件端子值为 TRUE 那么执行下一个重复,直到条件端子变成 FALSE。条件端子的默认值是 FALSE。由于检查条件端子输入值是循环结束后,因此While循环至少也要执行次。,布尔开关机械操作模式,六种模式 Switch When Pressed(按下时启动) Switch When Released(松开时启动) Switch Until Released(按下启动直到松开) Latch When Pressed(按下时锁定) Latch When Released(松开时锁定) Latch Until Released(直到松开时才锁定),4.2For Loop 循环,在指定次数的重复操作
5、完成之前,For循环控制VI执行重复操作。 For循环和While 循环之间的差别是:For循环的次数是预先指定的; While 循环则一直执行,直到输入条件变为False为止。For循环与While 循环都可以在Function菜单的Structures选项板中可找到,4.3移位寄存器,移位寄存器(Shifiregister)用于 For循环或 While循环中从一个迭代传输数据到下一个迭代,它由循环垂直边框上一对方向相反的端子组成,通过从左或右循环边框上弹出快捷菜单并选择Add Shift Register,可以创建移位寄存器。右端子(带向上箭头的矩形)在每完成一次迭代后存储数据,移位寄存
6、器将上次迭代的存储数据在下一次迭代开始时移动到左端子(具有向下箭头的矩形)上,同一个寄存器端子上数据类型的数据必须是同一类型。,建立循环结构演示,建立循环结构和移位寄存器演示,4.4Case结构,Case结构是执行条件语句的一种方法。这类似于常规的文本编程语言中常见的 IFThenElse语句。从Functions选项板的Structures子选项板中选择Case结构并将其放置在框图上。,4.5顺序结构,顺序结构用于顺序地执行子框图。这些子框图看起来像一帧电影胶片,因此称为帧(frame)。 将最先要执行的代码放置在顺序结构帧0(0.x)边框内,然后依次将执行代码放在帧1、帧2 框内。只有当最
7、后一帧完成后,数据才离开结构,4.6结构连线中的常见问题,1、给顺序结构局部变量多次赋值 2、对顺序结构中的多个帧进行连线 3、未在Case结构的所有分支中连接隧道 4、隧道重叠 5、连线从结构下面通过而不是从结构上穿过,例4-5 Case结构演示,1、设当水中溶解氧浓度超过2mg/L时,反应速度为K0,否则降低为0.1K0。 2、添加分支,设当水中溶解氧浓度超过4mg/L时,反应速度为K0;超过2mg/L时,反应速度为0.5K0,否则降低为0.1K0。,例4-5 Case结构演示,4.7公式节点,公式节点(Formula Node)是种结构,允许用户使用类似于多数文本编程语言的句法,编写一个
8、或多个代数公式。 这对于实现有多个变量的公式来说很有用。否则需要使用复杂的框图模型。 通过在框中直接键人公式代码来代替创建框图部分。,公式节点的输入、输出变量,从公式节点边框上弹出快捷菜单,从中选择Add Input 或 Add Output。 Change to Output可将输入改变为输出,Change to Input可将输出改变为输入。 在公式节点上有了I/O端子,使用Labeling 工具键入I/O变量的名字。 节点中每一个变量不能具有相同的名字。用于内部计算的中间变量必须声明为输出,但不一定要连接到外部节点。,LabVIEW 7.1 一级反应VI,公式语句,公式语句使用的算术表达
9、式,句法类似于多数文本编程语言。可给语句添加注释,注释用一对 “*” 封闭起来(/*注释*/ )。 使用Labeling工具在公式节点内输入公式,每个公式一定要用分号结束,并且变量的名字是大小写敏感的。,公式节点的运算符,例 4.9均布载荷简支梁受力和变形,局部变量的创建和使用方法,局部变量的创建既可以通过图示右键弹出菜单获得,也可以在功能模板上选择Function/Structures/Local Variable将其拖到框图上,得到一个代“?”的图标,再将其与框图中已有的变量建立关联。,4.8局部变量和全局变量,局部变量用于程序中控制初始化、协调控制功能、临时保存数据和传递数据。 全局变量
10、可在不同VI之间交换数据。,局部变量和公式节点,例4.7 LabVIEW 7.1,全局变量,全局变量与VI地位等同,以独立文件的形式保存在磁盘中。 全局变量只有面板没有框图。通过全局变量不同VI之间交换数据。 全局变量的创建步骤: 在Function Structures下选择Global Variable,将其图标拖到框图中。 双击Global Variable图标,得到其前面板 在其前面板上放上所需要的变量,例如数组、布尔量、字符串变量。 命名和保存这个变量。,LABVIEW 数据类型,5.1LabVIEW的数据类型 5.2数值类型 5.3LabVIEW的数组 5.3.1创建控制器数组和指
11、示器数组 5.3.2用循环创建数组 5.3.3数组功能,LABVIEW 数据类型,5.4函数的多态性操作 5.5簇 5.5.1创建簇控件和指示器 5.5.2簇顺序 5.5.3簇函数 5.5.4数组和簇的互换,学习指导,LabVIEW的数据按类型有数值量、逻辑量、字符串、文件路径等几类,在结构上有标量、一维、多维和簇,编程需要使数据连线匹配。,学习要点,认识数据类型的概念,编程时需要明确函数和子VI每一个数据结点的数据匹配; 数组是同类数据元素的集合,簇是混合元素的集合。熟悉数组的建立和使用过程,掌握数据类型及其结构在使用时的转换方法; 掌握循环结构的自动索引功能和函数的多态性操作方法。,5.1
12、LabVIEW的数据类型,5.2数值类型,最基本的数据类型是数值类型,这是一种标量值,通常包括一个整型值或实型数值(浮点)。 LabVIEW可以处理当前32位处理器提供的可能整型和实型的表示法。 选择合适数值表示法的关键是要求的范围和精度。数据类型占用的字节越多,取值的可能范围越大。 浮点类型和单精度类型可以处理的最大值为1038,一个无符号整型数的上限为2 N-1,其中N是位的数值。,5.3LabVIEW的数组,5.3.1创建控制器数组和指示器数组 从控制模板中的Array & Cluster子模板中选择一个空的数组壳; 将有效数据对象(诸如数字、布尔型或字符串)拖进数组壳或者从数组壳的弹出
13、菜单中选一个控制对象或指示器直接放入数组壳中。 5.3.2用循环创建数组 For循环和 While循环可以在其边界处自动地检索和累积数组元素,这种能力称为自动索引。 每循环一次就建立一个数组元素,在循环结束后,把数组送到一个数组指示器。,5.3.3数组功能,Array Size 指的是输入数组的元素数,N维数组的输出则是N个元素的数组。 Initialize Array 创建个包含初始值的数组。初始值由Element给出。 Build Array构组数组, 用于合并多个数组或给数组添加元素。,5.3.3数组功能,Array Subset数组子集 从输入数组中,输出个数组子集,以index指定开
14、始的元素,以length指定元素个数。 Index Array索引数组 index指定索引号,指定元素,第一个元素的索引号是0。,5.4函数的多态性操作,多态性(Polymorphism)是LabVIEW的函数接受不同维数数组和类型输入的能力。拥有这种能力的算术是多态函数。,5.4多态函数的运算规则,标量与标量相加输出结果是一个标量。 标量与数组相加结果每个元素被加上这个标量。 数组与数组相加结果是每个元素被加到另一个数组。 标量与数组相乘结果是每个元素被乘上这个标量。 标量与数组相除结果是每个元素被除以这个标量。 数组与数组相乘结果是一个数组,但由于一个数组的尺寸比另一个小,故得到的输出与输
15、入数组中较小的一个一样大小,乘运算作用于两个输入数组中的相应元素。,5.5簇,簇(cluster)是一种类似数组一样的数据结构,用于分组数据。 簇具有固定的大小。可以包含不同的数据类型。 簇由控件或指示器组成。 簇通常用于将出现在框图上的有关数据元素分组管理。因为簇在框图中仅用惟一的连线, 在框图上,只有当簇具有相同类型、相同元素数量和相同元素顺序时,才可以将簇的端子连接。 多态性应用于簇时,需要簇具有相同元素数量和相同元素顺序。,创建簇控件和指示器,在前面板上放置簇框架(cluster shell)创建簇控件和指示器。 将数字、布尔型、字符串、图表、图形、数组等任意组合放进来创建。 簇可以包含控件或指示器,但两者不能同时存在。一个簇成为控件簇或指示器簇取决于放进簇中的第一个元素。如果放进簇框架中的第一个元素是控件,后来给簇添加的任何对象都将变成控件对象。,创建数组指示器,创建簇控件和指示器,5.5.2簇顺序,簇元素按照它们放人簇中的先后顺序排序,而不是按照簇框架内的物理位置排序。簇框架中的第个对象标记为元素0,插入的第二个对象是元素1等等。 如果要访问簇中单个元素,必须记住簇顺序,因为簇中的单个元素是按顺序而不是按名字访问的。,5.5.3簇函数,1、捆绑(B
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 部门任务分解报告范文
- 《问题乳企股票跌停》课件
- 劳务合同书版
- c语言课件教学课件
- 《生物钾肥拌种》课件
- 养殖场租赁合同下载
- 《中国电力与能源》课件
- 解除劳动合同模板
- 2024版设备采购合同范本with设备规格与付款方式规定2篇
- 2024年度环保项目施工与维护合同
- 医患关爱和人文关怀管理制度
- 包工头与工人安全协议书范文
- 2024年江苏南京农业大学人才派遣人员招聘历年【重点基础提升】模拟试题(共500题)附带答案详解
- 药事管理学调研报告讨论
- 【基于OCALE的跨境电商的运营策略探析7000字(论文)】
- 医疗质量检查反馈表
- CHT 8023-2011 机载激光雷达数据处理技术规范(正式版)
- 审价报告模板
- 伟大的《红楼梦》智慧树知到期末考试答案章节答案2024年北京大学
- 大数据管理培训课件
- 医院DRG付费知识培训课件
评论
0/150
提交评论