第5章-创建子VI

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第第第第5章章章章创建子创建子创建子创建子VILabVIEW中的子中的子中的子中的子VI((((SubVI))))类似于类似于类似于类似于文本编程语言中的函数文本编程语言中的函数文本编程语言中的函数文本编程语言中的函数。。。。一般来说一般来说一般来说一般来说,,,,如果如果如果如果在在在在LabVIEW中不使用子中不使用子中不使用子中不使用子VI如同在编程语言如同在编程语言如同在编程语言如同在编程语言中不使用函数一样中不使用函数一样中不使用函数一样中不使用函数一样,,,,是不可能构建大的程是不可能构建大的程是不可能构建大的程是不可能构建大的程序的序的序的序的。。。。通过构建和使用子通过构建和使用子通过构建和使用子通过构建和使用子VI能方便的实现能方便的实现能方便的实现能方便的实现LabVIEW的层次化和模块化编程的层次化和模块化编程的层次化和模块化编程的层次化和模块化编程,,,,把复杂把复杂把复杂把复杂的编程问题划分为多个简单的任务的编程问题划分为多个简单的任务的编程问题划分为多个简单的任务的编程问题划分为多个简单的任务,,,,使程使程使程使程序结构变得更加清晰序结构变得更加清晰序结构变得更加清晰序结构变得更加清晰、、、、层次更加分明层次更加分明层次更加分明层次更加分明、、、、程程程程序更加易读序更加易读序更加易读序更加易读、、、、调试更加方便调试更加方便调试更加方便调试更加方便。。。。用户将常用的功能模块创建成子用户将常用的功能模块创建成子用户将常用的功能模块创建成子用户将常用的功能模块创建成子VI,,,,不不不不仅有效提高代码的使用效率仅有效提高代码的使用效率仅有效提高代码的使用效率仅有效提高代码的使用效率,,,,避免进行频避免进行频避免进行频避免进行频繁的重复操作繁的重复操作繁的重复操作繁的重复操作,,,,也大大节省了编程时间也大大节省了编程时间也大大节省了编程时间也大大节省了编程时间。。。。需要说明的是需要说明的是需要说明的是需要说明的是,,,,一个子一个子一个子一个子VI相当于一个子程相当于一个子程相当于一个子程相当于一个子程序序序序,,,,子子子子VI节点相当于子程序的调用语句节点相当于子程序的调用语句节点相当于子程序的调用语句节点相当于子程序的调用语句,,,,而而而而不是子不是子不是子不是子VI本身本身本身本身。。。。子子子子VI的控件和函数从调用该的控件和函数从调用该的控件和函数从调用该的控件和函数从调用该VI的程序框图中接收数据的程序框图中接收数据的程序框图中接收数据的程序框图中接收数据,,,,并将数据返回至并将数据返回至并将数据返回至并将数据返回至该程序框图该程序框图该程序框图该程序框图。。。。程序员用程序员用程序员用程序员用LabVIEW语言开发程序时语言开发程序时语言开发程序时语言开发程序时,,,,可以和可以和可以和可以和C语言一样采用从顶向下的设计方语言一样采用从顶向下的设计方语言一样采用从顶向下的设计方语言一样采用从顶向下的设计方法法法法,,,,用户每创建一个用户每创建一个用户每创建一个用户每创建一个VI程序程序程序程序,,,,都可以将其作都可以将其作都可以将其作都可以将其作为上一级为上一级为上一级为上一级VI的子的子的子的子VI节点来调用节点来调用节点来调用节点来调用,,,,实现其模块实现其模块实现其模块实现其模块化编程化编程化编程化编程,,,,这是使用这是使用这是使用这是使用G语言编程的分层特性语言编程的分层特性语言编程的分层特性语言编程的分层特性。。。。一个子一个子一个子一个子VI内可以调用多个子内可以调用多个子内可以调用多个子内可以调用多个子VI。。。。本章将主要本章将主要本章将主要本章将主要介绍介绍介绍介绍VI的两种创建方法以及的两种创建方法以及的两种创建方法以及的两种创建方法以及VI的调用的调用的调用的调用、、、、添加添加添加添加至用户库的方法至用户库的方法至用户库的方法至用户库的方法。。。。5.1图标的创建和编辑图标的创建和编辑图标的创建和编辑图标的创建和编辑在调用在调用在调用在调用VI的程序框图中的程序框图中的程序框图中的程序框图中,,,,用图标来代表用图标来代表用图标来代表用图标来代表子子子子VI。。。。另外另外另外另外,,,,子子子子VI必须有一个正确连接端子必须有一个正确连接端子必须有一个正确连接端子必须有一个正确连接端子的连接器来实现和它上层的连接器来实现和它上层的连接器来实现和它上层的连接器来实现和它上层VI的数据交换的数据交换的数据交换的数据交换。。。。LabVIEW为每个程序创建默认的图为每个程序创建默认的图为每个程序创建默认的图为每个程序创建默认的图标标标标,,,,显示在前面板和程序框图窗口的右上显示在前面板和程序框图窗口的右上显示在前面板和程序框图窗口的右上显示在前面板和程序框图窗口的右上角角角角。。。。对默认图标的编辑可通过图标编辑器来对默认图标的编辑可通过图标编辑器来对默认图标的编辑可通过图标编辑器来对默认图标的编辑可通过图标编辑器来完成完成完成完成。。。。图图图图5555----1111默认图标默认图标默认图标默认图标图图图图5555----2222图标编辑窗口图标编辑窗口图标编辑窗口图标编辑窗口图图图图5555----3333编辑后的图标编辑后的图标编辑后的图标编辑后的图标5.2连接器端口的设置连接器端口的设置连接器端口的设置连接器端口的设置连接器作为一个编程接口连接器作为一个编程接口连接器作为一个编程接口连接器作为一个编程接口,,,,为子为子为子为子VI定义定义定义定义输入输入输入输入、、、、输出端口数和这些端口的接线端类输出端口数和这些端口的接线端类输出端口数和这些端口的接线端类输出端口数和这些端口的接线端类型型型型。。。。这些输入输出端口相当于编程语言中这些输入输出端口相当于编程语言中这些输入输出端口相当于编程语言中这些输入输出端口相当于编程语言中的形式参数和结果返回语句的形式参数和结果返回语句的形式参数和结果返回语句的形式参数和结果返回语句。。。。当调用当调用当调用当调用VI节点时节点时节点时节点时,,,,子子子子VI输入端子接收输入端子接收输入端子接收输入端子接收从外部控件或其他对象传输到各端子的数从外部控件或其他对象传输到各端子的数从外部控件或其他对象传输到各端子的数从外部控件或其他对象传输到各端子的数据据据据,,,,经子经子经子经子VI内部处理后又从子内部处理后又从子内部处理后又从子内部处理后又从子VI输出端子输出端子输出端子输出端子输出结果输出结果输出结果输出结果,,,,传送给子传送给子传送给子传送给子VI外部显示控件外部显示控件外部显示控件外部显示控件,,,,或作或作或作或作为输入数据传送给后面的程序为输入数据传送给后面的程序为输入数据传送给后面的程序为输入数据传送给后面的程序。。。。从图标到从图标到从图标到从图标到连接器的切换方式如图连接器的切换方式如图连接器的切换方式如图连接器的切换方式如图5-4所示所示所示所示。。。。图图图图5555----4444从图标窗口到连接器的切换从图标窗口到连接器的切换从图标窗口到连接器的切换从图标窗口到连接器的切换一般情况下一般情况下一般情况下一般情况下,,,,VI只有设置了连接器端口只有设置了连接器端口只有设置了连接器端口只有设置了连接器端口才能作为子才能作为子才能作为子才能作为子VI使用使用使用使用,,,,如果不对其进行设置如果不对其进行设置如果不对其进行设置如果不对其进行设置,,,,则调用的只是一个独立的则调用的只是一个独立的则调用的只是一个独立的则调用的只是一个独立的VI程序程序程序程序,,,,不能改变不能改变不能改变不能改变其输入参数也不能显示或传输其运行结其输入参数也不能显示或传输其运行结其输入参数也不能显示或传输其运行结其输入参数也不能显示或传输其运行结果果果果。。。。如果需要对子如果需要对子如果需要对子如果需要对子VI节点进行输入输出节点进行输入输出节点进行输入输出节点进行输入输出,,,,那那那那么就需要在连接器面板中有相应的连线端么就需要在连接器面板中有相应的连线端么就需要在连接器面板中有相应的连线端么就需要在连接器面板中有相应的连线端子子子子。。。。用户可以通过选择用户可以通过选择用户可以通过选择用户可以通过选择VI的端子数并为每个的端子数并为每个的端子数并为每个的端子数并为每个端子指定对应的前面板控件或指示器来定端子指定对应的前面板控件或指示器来定端子指定对应的前面板控件或指示器来定端子指定对应的前面板控件或指示器来定义连接器义连接器义连接器义连接器。。。。连接器的设置分两个步骤连接器的设置分两个步骤连接器的设置分两个步骤连接器的设置分两个步骤::::((((1))))创建连接器端口创建连接器端口创建连接器端口创建连接器端口,,,,包括定义端口的数包括定义端口的数包括定义端口的数包括定义端口的数目和排列形式目和排列形式目和排列形式目和排列形式;;;;((((2))))定义连接器端口和控件及指示器的关定义连接器端口和控件及指示器的关定义连接器端口和控件及指示器的关定义连接器端口和控件及指示器的关联关系联关系联关系联关系,,,,包括建立连接和定义接线端类包括建立连接和定义接线端类包括建立连接和定义接线端类包括建立连接和定义接线端类型型型型。。。。如图如图如图如图5-5所示所示所示所示,,,,快捷菜单的模式选项板快捷菜单的模式选项板快捷菜单的模式选项板快捷菜单的模式选项板提供了提供了提供了提供了36种预定义的连接端口布局模式种预定义的连接端口布局模式种预定义的连接端口布局模式种预定义的连接端口布局模式。。。。用户可以选择所需的端口布局模式用户可以选择所需的端口布局模式用户可以选择所需的端口布局模式用户可以选择所需的端口布局模式。。。。图图图图5555----5555选择连接器的模式定义端口选择连接器的模式定义端口选择连接器的模式定义端口选择连接器的模式定义端口如果定义的端口数超过所需端口数如果定义的端口数超过所需端口数如果定义的端口数超过所需端口数如果定义的端口数超过所需端口数,,,,用用用用户可以不删除这些多余的端口户可以不删除这些多余的端口户可以不删除这些多余的端口户可以不删除这些多余的端口。。。。用户可以用户可以用户可以用户可以按需要选择端口和相应的控件或指示器建按需要选择端口和相应的控件或指示器建按需要选择端口和相应的控件或指示器建按需要选择端口和相应的控件或指示器建立关联立关联立关联立关联,,,,而对其他端口则不进行关联操作而对其他端口则不进行关联操作而对其他端口则不进行关联操作而对其他端口则不进行关联操作来使用多余的端口闲置来使用多余的端口闲置来使用多余的端口闲置来使用多余的端口闲置。。。。图图图图5555----6666建立连接器关联关系建立连接器关联关系建立连接器关联关系建立连接器关联关系图图图图5555----7777设置端口连接类型设置端口连接类型设置端口连接类型设置端口连接类型5.3子子子子VI的两种创建方法的两种创建方法的两种创建方法的两种创建方法LabVIEW中子中子中子中子VI的创建有两种方法的创建有两种方法的创建有两种方法的创建有两种方法::::一种方法是用现有一种方法是用现有一种方法是用现有一种方法是用现有VI创建子创建子创建子创建子VI,,,,另一种方法另一种方法另一种方法另一种方法是选定内容创建成子是选定内容创建成子是选定内容创建成子是选定内容创建成子VI。。。。前一种方法把整个前一种方法把整个前一种方法把整个前一种方法把整个框图所示的程序创建成子框图所示的程序创建成子框图所示的程序创建成子框图所示的程序创建成子VI是层次化编程的是层次化编程的是层次化编程的是层次化编程的基础基础基础基础,,,,后一种方法选定程序的一部分创建后一种方法选定程序的一部分创建后一种方法选定程序的一部分创建后一种方法选定程序的一部分创建成子成子成子成子VI,,,,相对前一种方法比较灵活机动相对前一种方法比较灵活机动相对前一种方法比较灵活机动相对前一种方法比较灵

1 / 46
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功