欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    LabVIEW的循环与结构.ppt

    • 资源ID:5436934       资源大小:1.22MB        全文页数:119页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    LabVIEW的循环与结构.ppt

    第4章 LabVIEW的循环与结构,LabVIEW中的结构放置在程序框图中,其外形一般是一个大小可以缩放的边框,当它与其他节点的连线有数据传递时,边框内的一段代码将反复执行或有条件执行或按某一定的顺序执行。结构内的该段代码则被称为子框图。结构框图可以看成是个代码容器。容器内的代码按照某种条件反复执行。,第4章 LabVIEW的循环与结构,4.1 For循环,4.1.1 For循环的组成 LabVIEW中的循环与结构位于程序框图的“函数”选板下的“结构”子选板中,如图4-1所示。,图4-1“结构”子选板界面,4.1 For循环,找到For循环后,用鼠标左键单击For循环后会发现鼠标箭头变成一个表示For循环的小图标,此时用户可在程序框图上用鼠标拖放一个任意大小和位置的For循环边框,如图4-2所示。,4.1 For循环,For循环相当于C语言中的下列程序代码:for(i=0;iN;i+);N:总循环次数,i:循环变量,初值为0,增值为1,循环体内为代码,4.1 For循环,图4-2 For循环界面,4.1 For循环,循环体,代码,有输入、输出端子,循环变量i,仅有输出,最基本的For循环由循环框架、总数接线端(输入端)、计数接线端(输出端)组成。,与其他语言相比,LabVIEW中的For循环除具有一般For循环共有的特点外,还具有一般For循环没有的独特之处。LabVIEW中没有类似于其他编程语言中的goto之类的转移语句,一旦确立了For循环执行的次数并开始执行后,只有达到输入的循环次数才能终止其运行。如果确实要跳出此循环,可以用While循环来代替For循环。,4.1 For循环,4.1.2 简单For循环应用示例,图4-3 简单For循环示例,FOR循环简单示例,?没有连加,4.1.4 移位寄存器在For循环内的应用,移位寄存器是LabVIEW的循环结构中的一个附加变量对象,其功能是将当前循环完成的某个数据传递给下一个循环。一般来说,移位寄存器可以存储任何类型的数据,但是连接在同一个寄存器两个端子上的数据必须是同一类型的。移位寄存器的类型与第一个连接到其端子之一的对象数据的类型相同。起到C语言中,i+的作用。在LABVIEW中,不支持变量的自赋值。只能通过移位寄存器解决。,图4-5 For循环移位寄存器示例,4.1.4 移位寄存器在For循环内的应用,当前的i,上一次的i,当前循环的结果值,上次循环的结果值,图4-6 For循环中不添加移位寄存器的结果,4.1.4 移位寄存器在For循环内的应用,4.1.3 自动索引在For循环内的应用,自动索引的功能是使循环框外面的数组成员逐个进入循环框内,或使循环框内的数据累加成一个数组输出到循环框外面。循环内-循环外,元素-数组,一维-二维,自动索引值,在完成循环后才一次性输出。For循环的索引可通过鼠标右键单击循环边框的数据通道来启动。,尽管For循环和While循环都支持自动索引功能,但其主要区别在于:For循环的数组默认为能自动索引,如不需要索引,可在数组进入循环的通道上单击鼠标右键弹出快捷菜单选择“禁用索引”选项;而While循环中的数组默认为不能自动索引,如果需要索引,可在循环的通道上单击鼠标右键弹出快捷菜单选择“启用索引”选项。另外,在创建二维数组时一般使用For循环而不使用While循环。,4.1.3 自动索引在For循环内的应用,图4-4 For循环自动索引示例,自动索引示例,自动索引示例2,4.1.3 自动索引在For循环内的应用,4.1.5 反馈节点在For循环内的应用,和移位寄存器一样,反馈节点也是用来实现数据在前后两次循环中的传递。但与移位寄存器相比,使用反馈节点有时能让程序更加简洁易懂。循环中一旦连线构成反馈,就会自动出现反馈节点的符号。反馈节点符号由两部分构成,分别为初始化端子和反馈节点箭头。,初始化端子 既可位于For循环框图内,也可位于For循环框图外,默认为位于For循环框图内。,4.1.5 反馈节点在For循环内的应用,反馈节点箭头 表示连线上的数据流动方向,它可以是正向的,也可以是反向的。,图4-7 For循环中使用反馈节点示例,4.1.5 反馈节点在For循环内的应用,反馈节点的使用2,反馈节点的使用1,此处没有开启自动索引功能。实心框,4.2 While循环,4.2.1 While循环的组成 在如图4-1所示的界面中找到While循环后,用鼠标左键单击While循环后会发现鼠标箭头变成一个表示While循环的小图标,此时用户可在程序框图上用鼠标拖放一个任意大小和位置的While循环边框,如图4-8所示。,图4-8 While循环界面,4.2 While循环,最基本的While循环由循环框架、条件接线端(输入端)和计数接线端(输出端)组成。,与For循环的计数接线端一样,While的计数接线端也是输出循环已执行次数的数字输出端子。While的条件接线端是一个布尔变量,需要输入一个布尔值。,4.2 While循环,条件接线端用于控制循环是否继续执行时,有两种使用状态:默认状态的条件接线端属性为“真(T)时停止”,此时的图标是一个方框圈住的实心的红色圆点,如图4-8右下角所示,这表示当条件为真时循环停止。,当在条件接线端图标上单击鼠标右键选择“真(T)时继续”,则图标变成如图4-9所示,此时表示当条件为真时循环继续。当每一次循环结束时,条件端口检测通过数据连线输入的布尔值和其使用状态决定是否继续执行循环。,4.2 While循环,图4-9 条件端子变换后的While循环界面,与For循环是在执行前检查是否符合条件不同,While循环是在执行后再检查条件端子。因此,While循环至少执行一次。,4.2 While循环,图4-10 简单While循环示例,While循环示例3,While循环示例1,While循环示例2,While-for示例,循环的输入输出,4.2 While循环,4.3 条 件(CASE)结 构,条件结构同样位于“函数”选板下的“结构”子选板中。与创建循环的方法类似,我们可以从结构选板中选择条件结构,用鼠标在程序框图上任意位置拖放任意大小的条件结构图框。Case条件结构由结构框架、条件选择端口、选择器标签及递增/减按钮组成,如图4-11所示。,图4-11 条件结构界面,4.3 条 件 结 构,如果要将分支选择器的端口数据类型从数字型改成布尔型,则对应的0和1分支会分别改变成假和真。选择器标签中也可以输入单个值、数值列或数值范围。,4.3.1 添加、删除与排序分支,在条件结构框架上单击鼠标右键,在弹出的快捷菜单中选择“在后面添加分支”菜单项用户就可以为条件结构添加新的分支,如图4-12所示。,图4-12 分支的添加和排序,添加完新分支后可在快捷菜单中选择“重排分支”菜单项打开重排分支对话框,在对话框的分支列表中用鼠标拖动列表项可以对分支重新排序。通常,排序按钮以第一个选择值为基准对选择器标签值进行排序。删除分支的操作与添加分支相同。创建新的分支后可以为新分支添加分支名。,4.3.1 添加、删除与排序分支,建立选择结构,建立多选结构,建立选择结构2,4.3.2 连接数据的输入与输出,条件结构的所有输入端子(包括隧道和选择端子)的数据对所有分支都可以通过连线使用,甚至不用连线也可使用。隧道即是指结构上的数据出入口,表现为以矩形框出现在结构的边框上。分支不一定要使用输入数据或提供输出数据,但是如果任一分支有输出数据,则其他所有的分支也必须在该数据通道有数据输出,否则将可能导致编程中的代码错误。,(a)不正确的连接边框上的数据通道为中空状态,(b)正确的连接边框上的数据通道为实心状态图4-13 连接数据的输入与输出,4.3.2 连接数据的输入与输出,实心框,空心框,4.3.3 Case条件结构示例,图4-14 执行两个数相乘或相加运算的Case条件结构示例,图4-15 执行两个数相乘或相加运算的Case条件结构示例,4.3.3 Case条件结构示例,4.3.3 Case条件结构示例,CASE结构示例1,IF结构示例-开方根,4.4 顺 序 结 构,顺序结构就是LabVIEW中用来控制程序执行次序的。顺序结构由多个框架组成,从框架0到框架n,首先执行的是放在框架0中的程序,然后执行的是放在框架1中的程序,这样依次执行下去。顺序结构的每个框架称为一帧,在程序运行时,只有上一个框架中的程序运行结束后才能运行下一个框架中的程序。,顺序结构共有两种类型:层叠式顺序结构 平铺式顺序结构。,4.4 顺 序 结 构,顺序结构顺序地执行子框图,而这些子框图看起来就像一帧帧的电影胶片,因此称之为帧。层叠式顺序结构和平铺式顺序结构都位于“函数”选板下的“结构”子选板中。,与创建其他数据结构的方法类似,用户可以从结构选板中选择顺序结构,然后用鼠标在程序框图上任意位置拖放任意大小的顺序结构图框,此时的顺序结构只有一帧,如图4-16(a)所示。在层叠式顺序结构的边框上单击鼠标右键,从弹出的快捷菜单中选择“在后面添加帧”菜单项就可以添加新的帧。每一个帧都有一个帧编号,编号从0开始。,4.4.1 层叠式顺序结构,图4-16 层叠式顺序结构界面,4.4.1 层叠式顺序结构,层叠式顺序结构中的数据要借助于顺序结构变量来传递。,(a)未赋值的局部变量(b)连接数据(c)赋值后的局部变量(d)结果 图4-17 顺序局部变量的创建与使用,4.4.1 层叠式顺序结构,图4-18 顺序结构中的数据通道,4.4.1 层叠式顺序结构,层叠式顺序结构,4.4.2 平铺式顺序结构,图4-19 平铺式顺序结构界面,多框架平铺式顺序结构的一个鲜明的特点是它的多个框架不是层叠在一起,而是自左至右平铺,并按从左至右的顺序执行。,层叠式顺序结构与平铺式顺序结构的功能完全相同。他们的主要区别在于平铺式顺序结构的所有框架在一个平面上,视觉上较为直观,不需要用户在框架之间的切换;当在编写项目程序时通常使用层叠式顺序结构,使框图中程序更加简洁。层叠式顺序结构和平铺式顺序结构之间是可以互相切换的。在顺序框架的右键选单中按需要选择相应选项即可。,4.4.2 平铺式顺序结构,相比于层叠式顺序结构,平铺式顺序结构各帧之间同样可以传输数据,而且平铺式顺序结构传递数据的方式与层叠式顺序结构相比较而言更加简单和直观,只需直接在两帧间连线就可以自动创建一个循环隧道传输数据,如图4-20所示。,4.4.2 平铺式顺序结构,图4-20 平铺式顺序结构的数据传输,4.4.2 平铺式顺序结构,平铺式顺序结构,4.5 事 件 结 构,所谓事件,是指对程序活动发生的异步通知。事件可以来自于用户界面、外部I/O或其他方式。用户界面事件包括鼠标点击、键盘按键等动作,外部I/O事件则指诸如数据采集完毕或发生错误时硬件触发器或定时器发出信号。LABVIEW中的事件结构也是一种特殊的选择结构。,其他方式的事件可通过编程生成并与程序的不同部分进行通信。LabVIEW支持用户界面事件和通过编程生成的事件,但不支持外部I/O事件。LabVIEW中的事件结构也是一种能改变数据流执行方式的一种结构,使用事件结构可以实现用户在前面板的操作(事件)与程序执行的互动。,4.5 事 件 结 构,Labview支持下列5种事件 1 应用程序事件(),这类事件主要反映整个应用程序状态的变 化,例如:程序是否关闭,是否超时等。2 VI事件(),这类事件反映当前VI状态的改变。例如:当前VI是否被关闭,是否选择了菜单中的某一项等等。3 动态事件(Dynamic),用于处理用户自己定义的或在程序中临时生成的事件。4 区域事件(Pane)和分割线事件(Splitter)是LabVIEW 8中新添加的特性。LabVIEW 8中,用户可以把一个VI的前面板分割成几份,这两类事件用来处理用户对某个区域或区域分割线的状态改变。5 控件事件(Control)是最常用的一种事件,用于处理某个控件状态的改变。例如,控件值的改变,或者鼠标键盘的操作。,4.5 事 件 结 构,在右键关联菜单中,只要选定了某一个事件产生源,其相应的所有事件均排列在右侧events框中。,4.5.1 事件结构的创建与简单示例,一个标准的事件结构由框架、超时端子、事件数据节点、递增/减按钮、选择器标签组成,如图4-21所示。和条件结构相似,事件结构也可以由多层框架组成,但与条件结构不同的是,事件结构虽然每次只能运行一个框图,但可以同时响应几个事件。,图4-21 事件结构的基本构成,4.5.1 事件结构的创建与简单示例,区域和分割线,超时端子用来设定超时时间,其接入数据是以毫秒为单位的整数值。-1为关闭超时事件。事件数据节点由若干个事件数据端子构成,数据端子的增减可以通过拖拉事件数据节点来进行,也可以通过单击鼠标右键从弹出的快捷菜单中选择“添加/删除元素”选项进行。事件结构同样支持隧道。,4.5.1 事件结构的创建与简单示例,图4-22 添加事件分支,4.5.1 事件结构的创建与简单示例,图4-23 编辑事件对话框,4.5.1 事件结构的创建与简单示例,现在前面板上放置控件,然后,事件源会自动把它作为选项列出。,在编辑事件对话框中首先要选择一个事件处理分支作为对象,然后在事件源中选择合适的事件源。编辑事件对话框中的事件列表中放置的是选中事件源对应的所有可能的事件名称,使用鼠标左键选择希望的动作选项就可以为事件源创建事件。,4.5.1 事件结构的创建与简单示例,在编辑事件对话框中还有一个添加事件按钮,它可以在一个事件框中添加多个事件,当事件框中某个事件发生时,事件框中的程序就会运行。事件的删除则通过单击添加事件按钮下方的删除事件按钮来操作。,4.5.1 事件结构的创建与简单示例,应该避免在同一VI上使用多个事件结构,图4-24 事件结构示例,4.5.1 事件结构的创建与简单示例,事件结构简单示例1,事件结构简单示例3,事件结构简单示例2,避免在循环外使用事件结构。在“值改变”事件分支中读取触发布尔控件的接线端。条件结构用于处理触发布尔控件的撤消操作。将一个条件分支配置为处理多个通知事件的操作时,使用警告信息。不要使用不同的事件数据将一个分支配置为处理多个过滤事件。如含有事件结构的While循环基于一个触发停止的布尔控件的值而终止,则记得在事件结构中处理该触发停止布尔控件。如无需通过程序监视特定的前面板对象,考虑使用“等待前面板活动”函数。用户界面事件仅适用于直接的用户交互。避免在一个事件分支中同时使用对话框和“鼠标按下?”过滤事件。避免在一个循环中放置两个事件结构。使用动态注册时,确保每个事件结构均有一个“注册事件”函数。如需在处理当前事件的同时生成或处理其它事件,考虑使用事件回调注册函数。区别使用通知或过滤事件。用于处理通知事件的事件分支,将无法影响LabVIEW处理用户交互的方式。如要修改LabVIEW是否处理用户交互,或LabVIEW怎样处理用户交互,可使用过滤事件。不要将前面板关闭通知事件用于重要的关闭代码中,除非事先已采取措施确保前面板关闭时VI不中止。例如,用户关闭前面板之前,确保应用程序打开对该VI的引用。或者,可使用前面板关闭?过滤事件,该事件在面板关闭前发生。,4.5.1 事件结构创建的注意事项,4.5.2 过滤事件和通知事件,按照事件的发出时间来区分,LabVIEW的事件可分为通知型事件(Notify Event)和过滤型事件(Filter Event)。,通知型事件是在LabVIEW处理完用户操作之后发出的,比如用户利用键盘操作改变了一个字符串,LabVIEW 在改变了该控件的值之后,发出一个值改变(Value Changed)通知型事件,告诉事件结构,控件的值被改变了。如果事件结构内有处理该事件的框架,则程序转去执行该框架。过滤型事件是在 LabVIEW 处理用户操作之前发出的,并等待相对应的事件框架执行完成之后,LabVIEW 再处理该用户操作。这类事件的名称之后都有一个问号。例如键盘按下?事件(Key Down?Event),当用户处理该事件时,控件的值还没有被改变,因此,用户可以在该事件对应的事件框架内决定是否让 LabVIEW先处理该事件,或改变键盘按下的值之后再让LabVIEW继续处理该事件。可以明显地看出,过滤型事件比相应的通知型事件要先发出。,图4-25 事件结构框架0(过滤事件),4.5.2 过滤事件和通知事件,事件过滤节点,决定是否处理后继事件,图4-26 事件结构框架1(通知事件),4.5.2 过滤事件和通知事件,(a)“确定”按钮动作前(b)选择“是”的计算结果(c)选择“否”的计算结果图4-27 静态事件结构运行结果,4.5.2 过滤事件和通知事件,事件结构简单示例3,事件结构简单示例4,事件结构分为静态和动态两种。如果只需对前面板对象进行操作判断,使用静态事件结构就完全可以实现;但如果需要实时改变注册内容或将程序中的数据作为事件的发生条件,将事件注册的过程限制在一段代码内等特殊情况时就要用到动态事件结构:动态注册事件源、动态端子连接、配置动态响应事件、在结构外部注销事件。,4.5.3 静态事件和动态事件,动态事件结构的创建就需要使用注册事件节点注册事件(指定事件结构中事件的事件源和事件类型的过程称为注册事件),再将结果输出到事件结构动态事件注册端子上。若要创建一个事件动态注册端子,可以在事件结构框图上单击鼠标右键,在弹出的快捷菜单中选择“显示动态事件接线端”选项即可。,4.5.3 静态事件和动态事件,图4-28 事件函数选板,4.5.2 过滤事件和通知事件,动态事件注册过程:1、获得对象的引用,引用输入到“注册事件”节点。2、“注册事件”节点输出接到动态端子上。3、配置”动态事件“。4、在结构外,加入”取消注册事件“节点。,4.6 局部变量与全局变量,4.6.1 局部变量的创建及使用 使用局部变量可对前面板上的输入控件或显示控件进行数据读写。写入一个局部变量相当于将数据传递给其他接线端。同时,通过局部变量,前面板对象既可作为输入访问也可作为输出访问。局部变量可从一个VI的不同位置访问前面板对象,并将无法用连线连接的数据在程序框图上的节点之间传递。,4.6 局部变量与全局变量,图4-29 直接单击前面板中对象创建局部变量,局部变量的创建方式有两种。(1)鼠标右键单击一个前面板中已有的对象,从弹出的快捷菜单中选择“创建”选项下的“局部变量”选项,便可创建为该对象一个局部变量,如图4-29所示。,(2)从如图4-1所示的“结构”子选板中选择“局部变量”并将其拖放到程序框图上。,4.6 局部变量与全局变量,LabVIEW通过自带标签将局部变量和前面板对象相关联,因此必须用描述性的自带标签对前面板控件和显示件进行标注。局部变量有读和写两种属性。,局部变量示例,局部变量示例2,图4-31 局部变量“读/写”属性的切换,图4-32 含有局部变量的程序框图,4.6 局部变量与全局变量,局部变量,图4-33 程序运行结果,4.6 局部变量与全局变量,4.6.2 全局变量的创建及使用,局部变量主要用于在程序内部传递数据,但是不能实现程序之间进行数据传递。局部变量的这个缺陷可以通过全局变量来实现,它可以同时在运行的多个VI或子VI之间访问和传递数据。LabVIEW中的全局变量与传统语言中的全局变量相类似。,若要创建一个全局变量,可以从如图4-1所示的“结构”子选板中选择“全局变量”并将其拖放到程序框图上,得到如图4-34所示的全局变量的图标。,4.6.2 全局变量的创建及使用,全局变量示例1,全局变量示例1,全局变量示例1,图4-34 全局变量,图4-35 全局变量界面,4.6.2 全局变量的创建及使用,另一种方法创建全局变量是在LabVIEW前面板的菜单栏中选择“文件”下拉菜单并选择“新建”选项,则将打开一个如图4-36所示的窗口。在窗口中选择“全局变量”并确定同样可以创建一个全局变量界面。,4.6.2 全局变量的创建及使用,图4-36 从“文件”下拉菜单中创建全局变量,4.6.2 全局变量的创建及使用,LabVIEW以自带标签区分全局变量,因此应当对前面板中的输入控件和显示控件使用描述性的自带标签来进行标注。用户可创建多个仅含有一个前面板对象的全局变量,也可创建一个含有多个前面板对象的全局变量从而将相似的变量归为一组。,4.6.2 全局变量的创建及使用,(a)通过鼠标右键关联全局变量(b)通过鼠标左键关联全局变量图4-37 全局变量的关联方式,4.6.2 全局变量的创建及使用,【例4-3】图4-38所示的是一个温度调节过程。,图4-38 程序运行过程与结果,4.6.2 全局变量的创建及使用,图4-39 温度调节系统程序框图,4.6.2 全局变量的创建及使用,图4-40 温度调节子VI框图,4.6.2 全局变量的创建及使用,全局变量-温度控制,5.9,4.7 公 式 节 点,公式节点是一种便于在程序框图上执行数学运算的文本节点。公式节点的引入,使LabVIEW的编程更加灵活,用户无需使用任何外部代码或应用程序,且创建方程时无需连接任何基本算术函数,采用公式节点实现计算公式在一定程度上减少了编程的工作量。,除接受文本方程表达式外,公式节点还接收为C语言编程者所熟悉的if语句、while循环、for循环和do循环。需要注意的是出现在公式节点中的所有变量必须声明为输入或输出.?。实际在公式节点中,输入变量不能在节点框内重定义,但输出变量可以重定义,中间变量亦可以自行定义。,4.7 公 式 节 点,公式节点-解方程,公式节点-语法,4.7.1 公式节点的创建,在如图4-1所示的“结构”选板中选择公式节点选项,把鼠标移动到程序框图上,用鼠标左键单击框图空白处的任何一点,鼠标移动时框图中会出现一个矩形虚线框,此矩形虚线框的形状就是将要创建的公式节点框图的形状,调整线框到合适的大小后再单击鼠标左键,程序框图中就会出现如图4-41所示的公式节点框图。,也可以在程序框图中单击鼠标右键选择“函数数学脚本与公式公式节点”并将其拖放至程序框图中。,4.7.1 公式节点的创建,图4-41 公式节点界面,4.7.2 公式节点的使用,在公式节点框图的左边或者右边的边框上单击鼠标右键,用户从弹出的快捷菜单中选择“添加输入”或者“添加输出”,就可得到如图4-42所示的带有输入输出变量端口的公式节点框图。,图4-42 带有输入输出变量端口的公式节点框图,用户可以在公式节点中输入需要运算的公式,然后在输入端口和输出端口中输入相应的输入变量和输出变量的变量名。当把鼠标放在相应的端口上变成小箭头时,用户双击鼠标左键,就可以往端口中输入相应标签了。为了可以方便的操作和显示输入变量和输出变量的值,用户可以创建数值输入控件和数值输出控件。,4.7.2 公式节点的使用,图4-43 创建显示控件,4.7.2 公式节点的使用,图4-44 在公式节点中实现多个计算公式,4.7.2 公式节点的使用,图4-45 在公式节点中实现if-else功能,4.7.2 公式节点的使用,公式节点-if语句,公式节点-多计算,程序互联接口、调用,LABVIEW 提供了和其它程序的调用接口,提高了LABVIEW的应用范围和应用能力。与c语言的接口与Matlab 的接口;(math script 脚本)与可执行文件exe的接口与Active X 控件的接口与Windows Dll 的接口,4.8 MathScript节点和MATLAB脚本节点,4.8.1 MathScript节点的创建 LabVIEW MathScript是一种可以用于编写函数和脚本的文本语言。按照MATLAB语法编写的脚本通常可在LabVIEW MathScript中运行。虽然MathScript引擎可执行MATLAB脚本,但不支持某些MATLAB软件中的函数。,MathScript节点的创建有两种方法:一是直接在如图4-1所示的“结构”选板中选择MathScript节点并拖放到程序框图中,二是在程序框图中单击鼠标右键选择“函数数学脚本与公式 MathScript节点”然后拖放至程序框图中。两种方法创建的MathScript节点完全一样,其界面如图4-46所示。,4.8 MathScript节点和MATLAB脚本节点,图4-46 MathScript节点界面,4.8 MathScript节点和MATLAB脚本节点,注意:框架为蓝色。,图4-47 MathScript节点框图程序及运行结果,4.8 MathScript节点和MATLAB脚本节点,注意:1、MathScript 脚本节点的运行不需要MATLAB的支持。2、与公式节点不同的是:输出变量的类型要自行选择。3、可在LABVIEW的MathScript编辑器中调试。,MathScript 示例,4.8.2 MathScript节点示例分析,【例4-4】下面通过使用MathScript节点实现绘制一个下式所示的曲线。,06,图4-48 MathScript节点框图程序,4.8.2 MathScript节点示例分析,直接生成图形界面。不调用Labview函数。,MathScript 示例1,图4-49 MathScript节点框图程序的运行结果,4.8.2 MathScript节点示例分析,输出仍在Labview中间。,图4-50 MathScript节点框图程序,4.8.2 MathScript节点示例分析,MathScript 示例2,采用Labview的函数输出。,图4-51 MathScript节点框图程序的运行结果,4.8.2 MathScript节点示例分析,4.8.3 MATLAB脚本节点,MATLAB节点的创建方法与Mathscript节点的第二种创建方法相同,用户可在程序框图中单击鼠标右键选择“函数数学脚本与公式脚本节点MATLAB脚本”然后拖放到程序框图中来创建一个MATLAB脚本节点。MATLAB脚本节点和MathScript节点的框图与结构很相似,如图4-52所示。虽然也可以选择输出变量的数据类型,但是要注意到选项的差别。,图4-52 MATLAB脚本节点框图,4.8.2 MathScript节点示例分析,Matlab 脚本示例,图4-53 MATLAB脚本节点的程序框图,4.8.2 MathScript节点示例分析,图4-54 MATLAB脚本节点的程序框图,4.8.2 MathScript节点示例分析,Matlab 脚本示例,调用应用程序,Active X 控件调用示例,Exe 程序调用示例,4.9 属 性 节 点,LabVIEW为前面板中的大部分控件都预定义了各种可用属性,其中包含了前面板控件的外观、值和功能行为,如定义控件的可见性、闪烁状态及数据操作的边界、文本的宽度等。但前面板的控件通常默认为只有输入和输出显示功能,我们需要创建属性节点去获取并设置控件隐含的属性。,一般来说,属性节点的创建方法有两种:一种方法是从函数选板中获取没有属性标识的空属性节点放置于程序框图中,用户然后为属性节点配置相应的类和属性,使用引用节点去指派需要配置属性的前面板控件对象,完成属性节点的创建;另一种方法是在框图中的控件上单击鼠标右键弹出快捷菜单,用户在快捷菜单中选择创建属性节点的菜单项直接创建属性节点,然后在菜单项中选择要创建的属性。,4.9 属 性 节 点,4.9.1 属性节点的直接创建法,在控件上单击鼠标右键,从弹出的快捷菜单上选择“创建属性节点”选项,在“属性节点”选项中选择所要建立的控件属性,这就能为控件直接创建属性节点。,属性节点实例1,属性节点实例2,属性节点实例3,属性节点实例4,图4-55 属性节点的创建,4.9.1 属性节点的直接创建法,属性的所有者,以控件的标签作区分。,下面介绍几种常用的属性节点及其使用方法。(1)键选中属性,图4-56 键选中属性,4.9.1 属性节点的直接创建法,(2)禁用属性,图4-57 禁用属性,“0”为启用“1”为禁用“2”为变灰+禁用,(3)可见属性,图4-58 可见属性,(4)衬底颜色属性,图4-59 衬底颜色属性,图4-60 修改衬底颜色属性的运行结果,(5)数据范围属性,(a)数据范围属性的使用(b)程序运行结果 图4-61 数据范围属性示例,图4-62 多属性节点端子的创建,(5)控件属性编程的举例,属性节点示例5改变控件的外观,属性节点示例6获取打印机属性,属性节点示例7获取前面板状态属性,属性节点示例8控件闪烁,4.9.2 属性节点的编程创建法,用编程方法创建属性节点就是先获取空属性节点,再为其配置对象并选择对象属性。空属性节点即没有连接任何对象的属性节点,其位于“函数”选板下“应用程序控制”子选板中。,图4-63 属性节点接线端子,图4-64 属性列表菜单,4.9.2 属性节点的编程创建法,使用编程方法为控件添加属性时,首先要获取控件的引用节点以获取该控件的属性。创建引用节点的方法是在控件上单击鼠标右键,在快捷菜单中选择“创建引用”菜单项,创建后的引用节点如图4-65所示。,4.9.2 属性节点的编程创建法,图4-65 引用节点,图4-65 引用节点,4.9.2 属性节点的编程创建法,本章小结,本章主要介绍了LabVIEW的2循环(For循环、While循环)和3结构(条件结构、顺序结构、事件结构)。For循环和While循环主要用于重复执行位于循环内部的程序。条件结构和顺序结构主要用于控件数据流。事件结构主要用于对来自于用户界面、外部I/O或其他方式事件的异步通知。,本章还介绍了在程序框图中如何设置局部变量和全局变量、属性节点,如何直接使用公式节点、MathScript节点、MATLAB节点。通过这些循环与结构、节点的使用,在很多情况下可以大大简化程序框图。,本章小结,循环与结构是LabVIEW的重点,是学习LabVIEW的基础。必须学会熟练的使用For循环、While循环、事件结构等常用编程语句。,本章小结,

    注意事项

    本文(LabVIEW的循环与结构.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开