当前位置:首页 > 测试测量 > 测试测量
[导读]类数据访问函数的自动创建利用面向对象的动态分配子VI与迭代处理混合复选框MathScript调试功能指针与互操作性的改进基于客户与用户的需求,NI LabVIEW 8.5软件引入了多项新的特性与改进。许多时常提及的特性被添加到

类数据访问函数的自动创建

利用面向对象的动态分配子VI与迭代处理

混合复选框

MathScript调试功能

指针与互操作性的改进

基于客户与用户的需求,NI LabVIEW 8.5软件引入了多项新的特性与改进。许多时常提及的特性被添加到了LabVIEW项目浏览器,这些工具帮助您管理大量的VI并防止交叉连接等常见问题。NI还在8.5版本中添加了一些您或许尚未意识到的其他特性,其中包括对于面向对象编程的改进和对于DLL的互操作性。

类数据访问函数的自动创建

LabVIEW类中的数据是私有的,这意味着该数据除非通过接口发布,否则任何外部函数都不能对其进行操作。由于防止了对一个实例化对象中数据的直接操作,并要求您为之创建一个访问函数,这促成了良好的编程习惯。现今在LabVIEW 8.5中自动实现了创建这些访问函数的过程,节省了您在处理大规模、复杂类时所需的开发时间。

图1.“创建访问函数”对话框自动实现了创建数据访问函数的过程。

如欲自动创建成员数据访问函数,右击LabVIEW项目资源管理器中的类并选中“创建新的访问函数”,接着是“成员数据访问VI…”该类的所有数据成员将展示在窗口中,您可以选择需要为之创建访问函数的数据成员(详见图1)。您也可以设置访问模式为读、写或读写。对于复杂的数据类型,如数组,您可以选择指向整个数组或是该数组中的一个特定元素。如果指向一个特定元素,您的VI将需要一个指定该元素的索引的参数。

利用面向对象的动态分配子VI与迭代处理

动态分配子VI可以调用LabVIEW类层级中的任一个VI。LabVIEW根据输入自动态分配终端的类数据类型,确定运行时所调用的子VI的实现方式。如欲创建一个动态分配成员VI,将连接端子面板上的一个输入终端设置为“动态分配输入(必需)”,这里假定该终端具有与拥有该成员VI的类具有相同的类类型。

利用LabVIEW 8.5,您可以使用动态分配成员VI实现迭代算法。迭代VI可以在其所在模块框图和任何子VI所在的模块框图中调用自身。当您希望对同一个过程的输入进行多次操作时,这一点非常有用。如欲支持迭代算法,选择“VI属性”对话框的“执行属性”页中的“共享实例间的克隆”选项。

迭代的恰当使用可以提高效率并优化LabVIEW应用的代码,但也往往会导致算法变得极为复杂。基于文本的环境中迭代所要求的一般编程实践同样适用于LabVIEW编程。迭代算法需要一个预先定义的最终可达到并终止迭代调用的基本条件。此外,迭代VI 不能作为应用的顶层VI,它必须由一个更高层次的VI首先调用。

图2.选择“VI属性”对话框中高亮显示的选项以支持迭代调用。

混合复选框

LabVIEW 8.5在系统选板中提供了一个称为混合复选框的新型前面板控件。不同于传统的布尔复选框,该控件具有三种状态。这对于或许具有未知或未定义状态的用户输入很有用。例如,如果您使用单个复选框设置多个对象的选项,当混合复选框设置为第三种状态时,多个对象间的任何状态冲突都将会被指示出来。

MathScript调试功能

LabVIEW 8.5包含有增强的面向MathScript节点的错误报告功能。例如,如果您从MathScript节点调用一个用户定义的函数,或.m文件,LabVIEW将在编辑时而不是运行时返回该用户定义函数中存在的编辑状态错误。如果您修改了该用户定义的函数,LabVIEW在您保存该.m文件后即时更新错误列表窗口。

指针与互操作性的改进

LabVIEW8.2及其后版本包含有导入共享库向导——一个强大的VI生成工具,它显著节约开发时间并减少用户错误。利用该向导,您可以方便地配置包含有需要供图形化代码使用的大量输入参数的复杂函数的DLL。该向导在LabVIEW 8.5中引入对包含带有指针元素的结构体的导入函数的支持。指针常用于基于文本的编程语言,以指向数值的存储位置。由于图形化编程遵守数据流编程模式,指针通常在LabVIEW中不是必需的。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

NI提供的软件包经济省时,不仅帮助开发人员节省时间,还为创客提供了新的机遇

关键字: LabVIEW 自动化测试系统

强大的图形化编程工具使整个测试和测量过程的各个方面实现可视化

关键字: LabVIEW 图形化编程工具

摘要:对于每一型新机试飞,或者是重大的研究性试飞和验证试飞,都必须实施遥测监控。现基于TTS(TextToSpeech)语音合成技术,结合飞行试验遥测监控系统的不足,利用TTS引擎在LabVIEW开发环境下设计并实现了遥...

关键字: 飞行试验遥测监控系统 TTS LabVIEW

Python由荷兰数学和计算机科学研究学会的吉多·范罗苏姆于1990年代初设计,作为一门叫做ABC语言的替代品。 Python提供了高效的高级数据结构,还能简单有效地面向对象编程。

关键字: python 函数 对象编程

在科研以及应用软件领域,LabVIEW和MATLAB作为比较常用的2款工具,相信很多人都用过吧。简单的概括一下,LabVIEW侧重测试测量和数据采集,MATLAB侧重科学计算和数据分析。

关键字: LabVIEW matlab 混合编程

摘要:利用单片机和虚拟仪器LabVIEW在PC端设计了温湿度测量及控制系统,用于温湿度数据监测。该系统上位机为PC端监控界面,下位机为单片机,单片机采集温湿度数据,并将采集到的数据通过串口发送给监控界面进行监测和管理。该...

关键字: DHT11 LabVIEW 单片机

摘要:当前闭环步进电机在自动化设备中的应用越来越广泛,故为了进一步满足闭环步进电机的应用需求,采用LabVIEW上位机+运动控制卡+驱动器模块的控制方案进行了多轴运动系统的设计,通过设计的上位机软件实现闭环步进电机的实时...

关键字: 闭环步进电机 精度测试 LabVIEW

测试数据综合分析的绝佳工具,深受工程师和研究员欢迎

关键字: 后处理分析软件 向导 函数

由上图中可以知道进程地址空间中最顶部的段是栈,代码中调用函数、定义局部变量(但不包含static修饰的变量)或声明的类的实例等等都要使用栈空间,当函数执行完(也就是程序执行超过了这个函数的作用范围的时候),操作系统会把该...

关键字: 进程地址 局部变量 函数

摘要:为满足某扭矩检测试验标准要求,基于LabView设计开发了一款扭矩检测装置,该装置能检测某类零部件的断裂力矩,满足试验标准要求,其他零部件的扭矩也可在该装置上检测。类似的扭矩装置可参考该装置进行设计。

关键字: 伺服电机 LabVIEW PLC
关闭
关闭